1. 基本操作
通过命令行的形式操作Flask,例如通过命令跑一个开发版本的服务器,设置数据库,定时任务等。
- 需要安装flask_script
- 需要将命令集中在一个文件中
- 分开models
- 将db放在另一个文件中,切断循环引用
2.项目结构
1. manage.py
from flask_script import Manager
from flask_script_demo import app
from db_script import DBmanager
manager = Manager(app)
@manager.command
def runserver():
print("服务器跑起来啦!!!")
# 将数据库相关的操作引入
manager.add_command('db',DBmanager) # 命令前缀为db 不是放在函数中运行的
if __name__ == '__main__':
manager.run()
2. flask_script_demo.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
3. db_script.py
from flask_script import Manager
# 将数据库相关的操作都可放入该表中
DBmanager = Manager()
@DBmanager.command
def init():
print("数据库初始化成功。。。")
@DBmanager.command
def migrate():
print("数据库迁移成功!!!")
if __name__ == '__main__':
DBmanager.run()