最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何創(chuàng)建一個(gè)Flask項(xiàng)目并進(jìn)行簡(jiǎn)單配置

 更新時(shí)間:2020年11月18日 17:12:51   作者:jfwh  
這篇文章主要介紹了如何創(chuàng)建一個(gè)Flask項(xiàng)目并進(jìn)行簡(jiǎn)單配置,幫助大家更好的理解和學(xué)習(xí)flask框架,感興趣的朋友可以了解下

安裝的依賴包

flask
pymysql
flask_script
flask_migrate
flask_sqlalchemy

創(chuàng)建Flask項(xiàng)目(項(xiàng)目目錄結(jié)構(gòu))

flaskexample
 |---static
 |---templates
 |---app.py

在項(xiàng)目下創(chuàng)建settings文件,進(jìn)行配置

setting.py
 
 class DevelopmentConfig:
  DEBUG = True
  SQLALCHEMY_DATABASE_URI=mysql+pymysql://用戶:密碼@host/數(shù)據(jù)庫(kù)
  SQLALCHEMY_TRACK_MODIFICATIONS=False
  SQLALCHEMY_ECHO=True
  ENV='development'
  
# 此時(shí)項(xiàng)目目錄結(jié)構(gòu) 
flaskexample
 |---static
 |---templates
 |---app.py
 |---setting.py

在項(xiàng)目下創(chuàng)建apps文件,在__init__.py文件下進(jìn)行配置

apps.__init__.py
 
 from flask import Flask
 
 import setting
 from exts import db
 
 
 def create_app():
  app = Flask(__name__, template_folser='../templates', static_folder='../static')
  
  app.config.from_object(setting.DevelopmentConfig)
  
  # 初始化ORM
  db.init_app(app=app)
  
  return app

# 此時(shí)項(xiàng)目目錄結(jié)構(gòu) 
flaskexample
 |---apps
  |---__init__.py
 |---static
 |---templates
 |---app.py
 |---setting.py

在項(xiàng)目文件夾下的app.py中進(jìn)行配置

app.py
 from flask import Flask
 from flask_script import Manager
 from flask_migrate import Migrate, MigrateCommand

 from apps import create_app
 from exts import db
 from apps.user import user
 
 app = create_app()
 
 # 配置manage
 manager = Manager(app=app)
 
 # 配置migrate命令,將相關(guān)命令交給manage
 migrate = Migrate(app=app, db=db)
 manager.add_command('db', MigrateCommand)
 
 # 注冊(cè)藍(lán)圖
 app.register_blueprint(user)
 
 
 if __name__ == '__main__':
  manager.run()

創(chuàng)建exts文件,進(jìn)行ORM配置

exts.__init__.py
 
 from flask_sqlalchemy import SQLAlchemy
 
 # 配置ORM
 db = SQLAlchemy()
 
# 此時(shí)項(xiàng)目目錄結(jié)構(gòu) 
flaskexample
 |---apps
  |---__init__.py
 |---exts
  |---__init__.py
 |---static
 |---templates
 |---app.py
 |---setting.py

在apps._init_.py中初始化ORM配置(已在文件中進(jìn)行配置)
在app.py中注冊(cè)migrate命令相關(guān)配置(已在文件中進(jìn)行配置)
在apps下創(chuàng)建app文件并創(chuàng)建相關(guān)文件(如用戶app)

# 此時(shí)項(xiàng)目目錄結(jié)構(gòu) 
flaskexample
 |---apps
  |---__init__.py
  |---user
   |---__init__.py
   |---view.py
   |---models.py
 |---exts
  |---__init__.py
 |---static
 |---templates
 |---app.py
 |---setting.py

在apps.user.models.py中編寫(xiě)數(shù)據(jù)表的相關(guān)信息

user.model
 from exts import db
 
 class User(db.Model):
  username = db.Column(db.String(60), nullable=True)
  password = db.Column(db.String(60), nullable=True)
  ···

進(jìn)行數(shù)據(jù)遷移

 # 1. 初始化表
 python app.py db init
 # 2. 生成遷移文件
 Python app.py db migrate
 # 3. 進(jìn)行數(shù)據(jù)遷移
 python app.py db upgrate

#當(dāng)命令2執(zhí)行成功后自動(dòng)生成migrations文件夾
# 此時(shí)項(xiàng)目目錄結(jié)構(gòu) 
flaskexample
 |---apps
  |---user
   |---__init__.py
   |---models.py
   |---view.py
  |---__init__.py
 |---exts
  |---__init__.py
 |---migrations
  |---versions
   |---9eef46471b52_.py
  |---alembic.ini
  |---env.py
  |---READEME
  |---script.py.mako
 |---static
 |---templates
 |---app.py
 |---setting.py

在user _init_下創(chuàng)建藍(lán)圖,并在apps的_init_下注冊(cè)

user.__init__

 from flask import Blueprint
 user = Blueprint("user", __name__)

之后就可以在user下的view.py中進(jìn)行邏輯的處理了

以上就是如何創(chuàng)建一個(gè)Flask項(xiàng)目并進(jìn)行簡(jiǎn)單配置的詳細(xì)內(nèi)容,更多關(guān)于創(chuàng)建 flask項(xiàng)目的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論

宁陕县| 高台县| 东阳市| 吉首市| 廊坊市| 阳东县| 察雅县| 武川县| 平南县| 巴塘县| 宁波市| 额尔古纳市| 禄丰县| 洞口县| 镇坪县| 乐昌市| 宝清县| 秦安县| 宁海县| 永康市| 磐安县| 乌海市| 商河县| 临夏县| 普兰县| 清徐县| 吉木乃县| 桂阳县| 建水县| 西藏| 怀宁县| 盖州市| 和平县| 四平市| 娄烦县| 射洪县| 留坝县| 青河县| 荔波县| 林周县| 澄迈县|