安装Flask

pip install flask

一 .创建Flask项目

Flask与Django相比,没有提供任何自动创建项目的操作,所以需要手动创建项目及启动项目的管理文件

例如,创建项目目录demo,在目录中创建hello.py并启动该项目。

from flask import Flask

# 创建flask的应用对象
app = Flask(__name__,
static_url_path="/python",
static_folder="static2",
template_folder="demo",
) # 定义路由
@app.route("/")
# 定义视图
def index():
return "hello flask" if __name__ == '__main__':
# 启动项目
app.run()

访问视图函数

初始化参数说明

  • import_name:不可缺省。定义flask框架的跟目录。参数 __name__ 表示以当前模块所在目录为flask的根目录。若要指定其他目录为根目录传对应目录名即可。若指定的目录不存在,则默认以启动目录为根目录。
  • static_url_path:可缺省。访问静态资源的url前缀。若缺省,默认访问路径为static。
  • static_folder:可缺省。存放静态资源的目录名称。若缺省,默认目录名称为static。
  • template_folder:可缺省。存放模板文件的目录名称。若缺省,默认目录名称为templates。

访问静态资源

二、配置参数

2.1 启动配置参数

if __name__ == '__main__':
# 启动项目
app.run(host="192.168.3.110", port=9898, debug=True)

参数说明:

  • host:启动绑定的IP
  • port:启动绑定的端口
  • debug:是否开启debug模式,默认不开启。

2.2 配置参数的使用方式&自定义配置参数&读取配置参数

1、读取配置文件使用配置参数

app.config.from_pyfile("config.cfg")

2、直接操作config的字典对象使用配置参数

app.config["DEBUG"] = True
app.config["LANGUAGE"] = "Java"

3、定义Config类对象使用配置参数

class Config(object):
DEBUG = True
# 自定义配置信息。自定义的配置信息需大写,否则配置无效。
LANGUAGE = "python" app.config.from_object(Config)

上面3种配置方式中的LANGUAGE 为自定义配置参数,自定义的配置参数必须大写,否则无效。

不管是默认的还是自定义的配置参数均保存在 config 这个字典中,所以使用字典的取值方法均能读取配置参数。读取配置的方法有两种:

  • 从全局对象app的config字典中取值
  • 从current_app的config字典中取值
from flask import Flask, current_app

...

@app.route("/")
def index():
print(app.config)
# 读取配置参数
# 1、从全局对象app的config字典中取值
# language = app.config.get("LANGUAGE")
# 2、从current_app的config字典中取值
language = current_app.config.get("LANGUAGE")
return F"hello {language}"

from flask import Flask, current_app

# 创建flask的应用对象
app = Flask(__name__,
static_url_path="/python",
static_folder="static2",
template_folder="demo",
)
"""
import_name:不可缺省。定义flask框架的跟目录。参数 __name__ 表示以当前模块所在目录为flask的根目录。若要指定其他目录为根目录传对应目录名即可。若指定的目录不存在,则默认以启动目录为根目录。
static_url_path:可缺省。访问静态资源的url前缀。若缺省,默认访问路径为static。
static_folder:可缺省。存放静态资源的目录名称。若缺省,默认目录名称为static。
template_folder:可缺省。存放模板文件的目录名称。若缺省,默认目录名称为templates。
""" # 配置参数的使用
# 1、读取配置文件使用配置参数
# app.config.from_pyfile("config.cfg") # 2、直接操作config的字典对象使用配置参数
# app.config["DEBUG"] = True
# app.config["LANGUAGE"] = "Java" # 3、定义Config类对象使用配置参数
class Config(object):
DEBUG = True
# 自定义配置信息。自定义的配置信息需大写,否则配置无效。
LANGUAGE = "python" app.config.from_object(Config) @app.route("/")
def index():
print(app.config)
# 读取配置参数
# 1、从全局对象app的config字典中取值
# language = app.config.get("LANGUAGE")
# 2、从current_app的config字典中取值
language = current_app.config.get("LANGUAGE")
return F"hello {language}" if __name__ == '__main__':
# 启动项目
# app.run(host="192.168.3.110", port=9898, debug=True)
app.run()

Flask_安装和配置(一)的更多相关文章

  1. JDK安装与配置

    JDK安装与配置 一.下载 JDK是ORACLE提供免费下载使用的,官网地址:https://www.oracle.com/index.html 一般选择Java SE版本即可,企业版的选择Java ...

  2. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  3. 烂泥:redis3.2.3安装与配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 前一段时间写过一篇codis集群的文章,写那篇文章主要是因为当时的项目不支持redis自 ...

  4. mysql源码包手动安装、配置以及测试(亲测可行)

    笔记编者:小波/qq463431476博客首页:http://www.cnblogs.com/xiaobo-Linux/ 记下这篇mysql笔记,望日后有用! redhat6采用centos yum源 ...

  5. 环境搭建系列-系统安装之centos 6.5安装与配置

    按照国际惯例,系列目录先奉上: 系列一:系统安装之centos 6.5安装与配置 系列二:准备工作之Java环境安装 系列三:数据为先之MySQL读写集群搭建 系列四:谈分布式之RabbitMQ集群搭 ...

  6. ZooKeeper安装与配置

    一. 单机安装.配置: 1. 下载zookeeper二进制安装包下载地址:http://apache.dataguru.cn/zookeeper/zookeeper-3.4.3/zookeeper-3 ...

  7. mac 下JDK 与 tomcat 的安装与配置

    一.Mac下JDK的安装 1.先检测Mac是否已经安装过JDK,在终端中输入java 或者 javac 显示说明,表明已经安装过JDK,JDK版本查询终端键入java -version,终端会返回JD ...

  8. 烂泥:zabbix3.0安装与配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 这个月又快过完了,最近也比较忙,没时间写文章,今天挤点时间把zabbix3.0安装与配置 ...

  9. Jenkins入门系列之——02第二章 Jenkins安装与配置

    2014-12-08:已不再担任SCM和CI的职位,Jenkins的文章如无必要不会再维护. 写的我想吐血,累死了. 网页看着不爽的,自己去下载PDF.有问题请留言! Jenkins入门系列之——03 ...

随机推荐

  1. jdk1.7源码之-hashMap源码解析

    背景: 笔者最近这几天在思考,为什么要学习设计模式,学些设计模式无非是提高自己的开发技能,但是通过这一段时间来看,其实我也学习了一些设计模式,但是都是一些demo,没有具体的例子,学习起来不深刻,所以 ...

  2. 测试工具_webbench

    目录 一.简介 二.例子 一.简介 Webbench是知名的网站压力测试工具,能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况. webbench的标准测试可以向我们展示服务器的 ...

  3. 推荐2个Mac OS X上的JSON工具

    原文:http://www.giser.net/?p=887 1 visual JSON 能够将JSON串以列表的方式展示,方便对JSON数据的解析. 2 JSONModeler 可以解析JSON串生 ...

  4. 2019"深思杯"山东省大学生网络安全技能大赛部分wp

    签到 载入OD查看字符串 上下左右 这道题出来的时候真的是一点思路都没有,一直以为是什么编码来着,看了大佬们的 wp 原来是画图 拿大佬的脚本: from PIL import Image im = ...

  5. 资源日历关联(Project)

    <Project2016 企业项目管理实践>张会斌 董方好 编著 其实,[日历]并不是[任务]的唯一,他还有另一个老相好:[资源]. 是啊,就像张同学给的例子那样,得为一个专门的外聘专家这 ...

  6. CF108A Palindromic Times 题解

    Content 现在是 \(h\) 时 \(m\) 分,请求出在此之后(不包含此时)的第一个回文时间. 数据范围:\(0\leqslant h\leqslant 23,0\leqslant m\leq ...

  7. Java 数据类型:集合接口Map:HashTable;HashMap;IdentityHashMap;LinkedHashMap;Properties类读取配置文件;SortedMap接口和TreeMap实现类:【线程安全的ConcurrentHashMap】

    Map集合java.util.Map Map用于保存具有映射关系的数据,因此Map集合里保存着两个值,一个是用于保存Map里的key,另外一组值用于保存Map里的value.key和value都可以是 ...

  8. nginx配置文件简析

    https://blog.csdn.net/wangbin_0729/article/details/82109693 #运行用户 user www-data; #启动进程,通常设置成和cpu的数量相 ...

  9. mysql联合查询更新数据库例子

    mysql联合查询更新数据库例子,用户表,部门表,把用户表中的部门属性更新为部门表的主键UPDATE user_table AS utINNER JOIN belongdept AS bd ON bd ...

  10. log4j添加日志一定记住在工程的web.xml文件下加一些内容

    log4j添加日志一定记住在工程的web.xml文件下加如下内容: