flask项目---初始化

0. 准备

1. 新建项目目录xxx,并创建虚拟环境

2. 安装开发中使用的依赖基础模块

pip install flask==0.12.4 -i https://pypi.douban.com/simple
pip install flask-redis -i https://pypi.douban.com/simple
pip install flask-session -i https://pypi.douban.com/simple
pip install flask-script -i https://pypi.douban.com/simple
pip install flask-mysqldb -i https://pypi.douban.com/simple
pip install flask-sqlalchemy -i https://pypi.douban.com/simple
pip install flask-migrate -i https://pypi.douban.com/simple

3. 如果第一次安装mysqldb会报错 

报错解决https://blog.csdn.net/qq_52385631/article/details/123598155?spm=1001.2014.3001.5501

1. 创建项目目录结构:

项目根目录/
├── application/            # 项目主要逻辑代码保存目录
|   ├── settings/           # 项目配置存储目录
│   │   ├ dev.py            # 开发阶段的配置文件【本地开发者使用】
│   │   ├ prod.py           # 生产阶段的配置文件【线上服务器使用】
|   |   ├ __init__.py       # 项目公共配置文件
│   ├── __init__.py         # 项目初始化文件
├── manage.py               # 项目的终端管理脚本文件

2. manage.py

from application import init_app

manage = init_app("application.settings.dev")

@manage.app.route('/')
def index():
    return 'index'

if __name__ == '__main__':
    manage.run()

3. applicatiion/__init__py,代码:

from flask import Flask
from flask_script import Manager
from application.utils.config import load_config
manager = Manager()

def init_app(config_path):
    """全局初始化"""
    # 创建app应用对象
    app = Flask(__name__)
    # 项目根目录
    app.BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    
    # 加载配置
    Config = load_config(config_path)
    app.config.from_object(Config)

    # 初始化终端脚本工具
    manager.app = app

    return manager

4. 配置

4.1 在application/utils/config.py中准备加载配置的函数代码:

from importlib import import_module
def load_config(config_path):
    """自动加载配置"""
    module = import_module(config_path)
    name = config_path.split(".")[-1]
    if name == "settings":
        return module.InitConfig
    else:
        return module.Config

4.2 编写项目默认配置文件, application/settings/__init__.py代码:

class InitConfig():
    """项目默认初始化配置"""
    DEBUG = True

4.3 application/settings/dev.py,代码:

from . import InitConfig
class Config(InitConfig):
    """项目开发环境下的配置"""
    DEBUG = True

4.4 application/settings/prod.py,代码:

from . import InitConfig
class Config(InitConfig):
    """项目运营环境下的配置"""
    DEBUG = False

5. 修改启动方式

python manage.py runserver -h0.0.0.0 -p5000

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骑猪去兜风z1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值