项目名称:牛马问答平台
项目简介:1.主要用来给社会上的牛马们探讨老板的恶心之处。
2. 用来学习交流。
技术手段:Python3.x + Flask + render_template + pymysql + flask_sqlalchemy........
注意该博客为迭代项目,于最后一期展示完整的代码和Git仓库,还要所需要的依赖
目前的目录结构
blueprints文件中Auth.py举例
from flask import Blueprint
from flask import render_template
# 需要传两个参数
bp = Blueprint("auth",__name__,url_prefix='/user')
# 登录接口
@bp.route('/login')
def userLogin():
return render_template('login.html')
@bp.route('/register')
def userRegister():
pass
bp=Blueprint("auth",__name__,url_prefix="/user")
bp : 是命名
Blueprint : 是从flask引入的方法
auth : 是这个模块的名字
__name__ : 固定写法
url_prefix="/user" : 如果需要访问/login需要加上前缀/user
App.py
from flask import Flask
from exts import db
from blueprints.auth import bp as bp_user
from blueprints.qa import bp as bp_qa
from flask_migrate import Migrate
import config
app = Flask(__name__)
# 绑定配置文件,这样的方式会将所有的congig里面的配置进行加载出来
app.config.from_object(config)
# 这个方法是可以先创建app,然后再绑定
db.init_app(app)
migrate = Migrate(app,db)
app.register_blueprint(bp_user)
app.register_blueprint(bp_qa)
if __name__ == '__main__':
app.run()
Config.py
# 本地基础信息的主机名
HOSTNAME = "127.0.0.1"
# mysql端口号
PORT = "3306"
# 账号
USERNAME = "root"
# 密码
PASSWORD = "admin123"
# 数据库名
DATABASE = "flasklearn"
DB_URI = "mysql+pymysql://{}:{}@{}:{}/{}?charset=utf8".format(USERNAME,PASSWORD,HOSTNAME,PORT,DATABASE)
SQLALCHEMY_DATABASE_URI=DB_UR
Exts.py
# 这个文件存在的意义就是为了解决循环引用的问题
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
Models.py
from exts import db
from datetime import datetime
class UserModel(db.Model):
__tablename__ = 'user'
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
username = db.Column(db.String(100), nullable=False)
password = db.Column(db.String(100), nullable=False)
auth = db.Column(db.String(20),nullable=False,default="用户")
email = db.Column(db.String(100), nullable=False,unique=True)
join_time = db.Column(db.DateTime,default=datetime.now)
项目启动之余,接下里会在这个基础上继续更新~