内容简介:将项目根目录下的config.py移动到app目录下,并拆分成setting.py和secure.py两个配置文件settings.py用来保存一些非机密的配置,比如程序中的参数、静态文件路径等生产环境和开发环境相同的配置信息,这个文件可以上传gitsecure.py用来保存一些机密配置,比如数据库连接配置、是否开启DEBUG,这个文件用来保存开发环境和生产环境不同的配置,这个文件不能上传git
在单蓝图多视图文件模板的基础上将配置文件拆分为两个
将项目根目录下的config.py移动到app目录下,并拆分成setting.py和secure.py两个配置文件
settings.py用来保存一些非机密的配置,比如程序中的参数、静态文件路径等生产环境和开发环境相同的配置信息,这个文件可以上传git
secure.py用来保存一些机密配置,比如数据库连接配置、是否开启DEBUG,这个文件用来保存开发环境和生产环境不同的配置,这个文件不能上传git
文件目录结构如下
.
├── app
│ ├── __init__.py
│ ├── secure.py
│ ├── setting.py
│ ├── static
│ │ └── favicon.ico
│ ├── templates
│ │ └── login.html
│ └── web
│ ├── account.py
│ ├── blueprint.py
│ ├── __init__.py
│ ├── server.py
│ └── user.py
├── Pipfile
├── Pipfile.lock
├── readme.txt
└── run.py
编辑app/__init__.py内容如下,修改读取配置文件的地方。
# -*- coding:utf-8 -*-
# 初始化flask核心对象
from flask import Flask
# 定义一个函数用来创建app核心对象
def create_app():
app = Flask(__name__)
# app.config.from_object('config')
app.config.from_object('app.secure')
app.config.from_object('app.setting')
# 调用注册蓝图
register_blueprint(app)
return app
# 创建注册蓝图的方法
def register_blueprint(app):
# 导入蓝图对象
from app.web.blueprint import web
app.register_blueprint(web)
编辑app/web/user.py 视图函数,添加一个测试视图函数读取公共配置文件信息
# -*- coding:utf-8 -*-
# 视图函数定义文件,定义和用户相关的视图函数
from .blueprint import web
# from flask import session, redirect
# 读取配置文件需要使用current_app
from flask import current_app
# @web.route('/user/')
# def user():
# pass
# 让url前缀为 user的请求都要求登录
# @web.before_request
# def press_request(*args, **kwargs):
# user = session.get('user_info')
# if user:
# return None
# return redirect('/login/')
@web.route('/user/', methods=['GET', 'POST'])
def user():
return 'user'
@web.route('/config/')
def config():
return current_app.config['PIC_DIR']
创建一个图片目录 app/static/pic
在公共配置文件app/setting.py中添加如下
# -*- coding:utf-8 -*- # 定义项目公共配置文件,生成环境可开发环境相同,可以上传git # 图片目录 PIC_DIR = "static/pic/"
在项目根目录下创建git忽略配置文件.gitignore,内容如下
.idea *.iml *.swp .idea/* *.pyc __pycache__ app/__pycache__ app/web/__pycache__ Pipfile.lock app/secure.py
以上所述就是小编给大家介绍的《flask web模板三》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 网站模板 | 现代时尚创新创意投资组合HTML5模板设计
- ReportLibrary 报表模板库新增 21 张报表模板,加入报表导出功能!
- ReportLibrary 报表模板库新增 21 张报表模板,加入报表导出功能!
- 工具集核心教程 | 第五篇: 利用Velocity模板引擎生成模板代码
- Word 模板引擎 poi-tl V1.3.0 发布,新增模板语法
- React与Vue模板使用比较(一、vue模板与React JSX比较)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。