项目设计
一,模块设计 home:
admin:
二,目录设计
manage.py --- 入口文件 app/ --- 项目目录 ├── init.py --- 初始化文件 ├── models.py --- 数据模型文件 ├── admin/ --- 后台应用 │ ├── init.py │ └── views.py ├── home/ --- 前台应用 │ ├── init.py │ └── views.py ├── static/ --- 静态文件目录 └── templates/ --- 模板目录 ├── admin/ └── home/ |manage.py ---入口文件
三,使用蓝图构建项目应用结构
app初始化
app/__init__.py:
from flask import Flask
app = Flask(__name__)
app.debug = True
from app.home import home as home_blueprint
from app.admin import admin as admin_blueprint
app.register_blueprint(home_blueprint)
app.register_blueprint(admin_blueprint,url_prefix="/admin")
admin模块应用
app/admin/__init__.py
from flask import Blueprint
admin = Blueprint("admin",__name__)
import app.admin.views
admin视图
app/admin/views.py:
from . import admin
@admin.route("/")
def index():
return "<h1 style='color:red'>this is admin</h1>"
home模板应用
app/home/__init__.py
from flask import Blueprint
home= Blueprint("home",__name__)
import app.home.views
home视图
app/home/views.py:
from . import home
@home.route("/")
def index():
return "<h1 style='color:green'>this is home</h1>"
入口文件
manage.py:
from app import app
if __name__ == "__main__":
app.run()
运行项目:
数据模型设计
1,安装数据库连接依赖包 SQLAlchemy
sudo pip3 install flask-sqlalchemy
2,定义mysql数据库连接
from flask import Flask
from flask sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = "mysql+pymysql://root:123456@localhost/blog"
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
db = SQLAlchemy(app)
#会员数据模型
class User(db.Model)
__tablename__ = 'user'
id = db.Column(db.Integer,primary_key=True)
name = db.Column(db.String(100),unique=True)
pwd= db.Column(db.String(100))
email= db.Column(db.String(100))
phone= db.Column(db.String(11),unique=True)
info= db.Column(db.Text)
face = db.Column(db.String(255))
addtime = db.Column(db.DateTime,index=True,default=datetime.utcnow)
# if __name__=='__main__':
# db.create_all()
3.models.py