以开源软件德数WMS为例,在v1.0版本中我们只进了功能实现,没有进行MVC模式编程。随着程序规模的扩大,使得程序代码文件过长,传统代码模式不利于代码管理和功能扩展。
https://gitee.com/beipingOS/deshu-wms
所以我们将代码升级改造成MVC模式。我们将代码中的模型抽取出来放到models文件夹下,将代码显示部分抽取出来放到views文件夹下,如下图所示:
为了避免程序代码出现重名,我们在模型代码文件名后面加了大写字母M,同理,视图代码后面加了V。本程序代码弱化了控制模块,所以在代码中没有C部分。
代码中的base.py是连接各个代码模块的桥梁
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_babel import Babel
import flask_admin
app = Flask(__name__)
app.config.from_pyfile('config.py')
db = SQLAlchemy(app)
babel = Babel(app)