如果设置项比较少的话可以使用“app.config['param_name']=value”的形式直接使用,如果需要设置的参数比较多的话,可以单独新建一个配置文件用来存放配置信息(配置文件中的参数需大写),且需要将配置文件中的内容导入到app.config中。

导入配置文件的两种方式:

  • from_object:例如在项目文件夹下新建一个“config”py文件,在代码中import config后使用app.config.from_object(config)即可。
  • from_pyfile(filename, silent=False):例如在项目文件夹下新建一个配置文件,可以不用是py文件,txt文件或其他文件也行,直接使用app.config.from_pyfile('cfg.txt')就行。filename必须是包含后缀名的文件名全称,silent默认为False,即该配置文件cfg.txt不存在时,会报错,设置silent=True时,则不会报错,直接跳过此行代码。

配置文件中参数设置及其含义如下:

  • DEBUG:设置为“True”时表示开启debug模式,设置为“False”表示关闭debug模式,只针对py文件。
  • TEMPLATES_AUTO_RELOAD:设置为True时,HTML模板有修改时,ctrl+s后就可自动加载HTML文件,不用重新启动服务器。类似DEBUG,但只针对HTML模板文件。
  • SQLALCHEMY_DATABASE_URI:设置数据库连接字符串(这里使用的是sqlalchemy插件),字符串形式是固定的,为“dialect+driver://username:password@host:port/database”,比如MySQL的连接字符串可以如图配置(其中的花括号是Python的一种字符串格式化,就像“%”使用一样),其中driver为Python2的mysqldb,Python3的pymysql,具体以安装的插件为准:
 # 数据库连接固定格式格式字符串
# dialect+driver://username:password@host:port/database
DIALECT = 'mysql'
DRIVER = 'mysqldb'
USERNAME = 'root'
PASSWORD = 123456
HOST = '127.0.0.1'
PORT = ''
DATABASE = 'db_demo1' SQLALCHEMY_DATABASE_URI = '{dialect}+{driver}://{username}:{password}@{host}:{port}/{database}?charset=utf8'.format(
dialect=DIALECT, driver=DRIVER, username=USERNAME, password=PASSWORD, host=HOST, port=PORT, database=DATABASE
)
  •  SECRET_KEY:包含24个字符的字符串,用来对session中的数据进行加密操作的,一般采用随机字符串,可以使用os.urandom(24)来生成这个字符串,注意如果重启服务器后这个字符串改变了的话,之前设置的session就获取不到了。
  • PERMANENT_SESSION_LIFETIME:设置session的过期时间,datetime.timedelta类型,如果没有设置,则默认为31天,比如设置过期时间为7天:PERMANENT_SESSION_LIFETIME=datetime.timedelta(days=7)。
  • SERVER_NAME:设置域名和端口号,如SERVER_NAME='xxx.com:5000'

Flask初学者:配置文件的更多相关文章

  1. 源码解析Flask的配置文件

    在flask里,我们常在主文件中定义某些配置,比如: app.debug = True app.secret_key = 'helloworld!!' 实际上,flask中默认可以进行可选的配置项有很 ...

  2. Flask的配置文件

    Flask的配置文件 与 session 配置文件 flask中的配置文件是一个flask.config.Config对象(继承字典) 默认配置为: { 'DEBUG': get_debug_flag ...

  3. Flask 的配置文件

    Flask 的配置文件 四种方法给 Flask 做配置 1直接给 app 对象赋值属性 以字典的形式,给flask做配置 以文件的形式,给flask做配置(django 就是用这种) 以类的形式,给f ...

  4. flask设置配置文件的四钟方式

    # -*- coding: utf-8 -*- DEBUG = True # -*- coding: utf-8 -*- from flask import Flask,session,current ...

  5. Flask初学者:session操作

    cookie:是一种保存数据的格式,也可以看成是保存数据的一个“盒子”,服务器返回cookie给浏览器(由服务器产生),由浏览器保存在本地,下次再访问此服务器时浏览器就会自动将此cookie一起发送给 ...

  6. Flask初学者:Python虚拟环境,Flask安装,helloworld,run方法

    一.Python虚拟环境: 作用:使Python框架的不同版本可以在同一台电脑上运行.如果在电脑上全局(C盘或者其他目录)安装Flask(或其他Python框架),当你使用其他版本的Flask(比如有 ...

  7. Flask的配置文件 与 session

    配置文件 flask中的配置文件是一个flask.config.Config对象(继承字典) 默认配置为: { 'DEBUG': get_debug_flag(default=False), 是否开启 ...

  8. Flask设置配置文件

    Flask修改配置: from flask import Flask app = Flask(__name__) app.config['DEBUG'] = True @app.route('/') ...

  9. flask 设置配置文件的方式

    from flask import Flask from flask import current_app """ 配置参数设置与读取 """ ...

随机推荐

  1. python 发布

    使用distutils.core.setup函数发布程序 将要发布的包放到mypub的目录下 在mypub目录下创建一个setup.py文件 setup.py文件的设置 from distutils. ...

  2. matlab 基本操作

    导入excel 右键excel文件, import data, 选择column vector点击导入即可, 在右侧的workspace就可以看到添加的列变量了 在workspace中右键添加clas ...

  3. UVALive 4262——Trip Planning——————【Tarjan 求强连通分量个数】

    Road Networks Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submit Stat ...

  4. C# 多线程之线程池

    线程池System.Threading.ThreadPool,可用于发送工作项.处理异步I/O.代表其它线程等待以及处理计时器.基本用法: public void Main() { ThreadPoo ...

  5. python小游戏之贪吃蛇

    本程序需要安装pygame,请自行百度安装...... 废话不多说,直接上代码 import pygame,sys,time,random from pygame.locals import * # ...

  6. 软件测试Lab 1 Junit and Eclemma

    首先安装eclipse 然后下载hamcrest-core-1.3.jar,下载地址:http://mvnrepository.com/artifact/org.hamcrest/hamcrest-c ...

  7. centos6.5_64bit安装Redis3.2.8

    一.去官网下载最新稳定版 https://redis.io/   二.打开redis需要的端口 /sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEP ...

  8. 使用后台程序的第一个程序hello word

    1.在advanced\backend\SiteController.php中输入 2.在advanced\backend\Views文件夹下添加名字为say.php的文件,文件名必须和控制器中的视图 ...

  9. 关于Windows创建进程的过程

    之前有听到别人的面试题是问系统创建进程的具体过程是什么,首先想到的是CreateProcess,但是对于具体过程却不是很清楚,今天整理一下. 从操作系统的角度来说 创建进程步骤:        1.申 ...

  10. Dll注入:Windows消息钩子注入

    SetWindowsHook() 是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的.当消息到达后,在目标窗口处理函数之 ...