中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Flask blueprint藍圖按功能模塊化架構實例

發布時間:2020-08-23 19:02:02 來源:網絡 閱讀:19001 作者:楊云1028 欄目:開發技術

使用flask作為開發框架,一定要按功能模塊化,否則到了后面項目越大,開發速度就越慢。

1Flask模塊化結構規劃

[root@yang-218 yangyun]# tree
.
├── asset               #資產功能目錄
│   ├── __init__.py
│   ├── models.py        #資產數據庫結構文件
│   └── views.py         #資產視圖文件
├── user                #用戶功能目錄
│  ├──__init__.py
│  ├── models.py          #用戶數據庫結構文件
│  └── views.py           #用戶視圖配置文件
├── config.py             #公共配置文件
├── requirements.txt        #需要的安裝包
├── run.py               #主運行文件
├── static               #靜態文件目錄,css,js, p_w_picpath等
└── templates             #靜態頁面存放目錄
   ├── asset           #asset功能模塊頁面存放目錄
    │  └── index.html
    ├── index.html         #首頁
    └── user                        
        └── index.html

2run.py主運行文件配置

[root@yang-218 yangyun]# cat run.py

from flask import Flask
from asset import asset
from user import user
 
 
apple=Flask(__name__,
        template_folder='templates', #指定模板路徑,可以是相對路徑,也可以是絕對路徑。 
        static_folder='static',  #指定靜態文件前綴,默認靜態文件路徑同前綴
        #static_url_path='/opt/auras/static',     #指定靜態文件存放路徑。
         )
apple.register_blueprint(asset,url_prefix='/asset')    #注冊asset藍圖,并指定前綴。
apple.register_blueprint(user)      #注冊user藍圖,沒有指定前綴。
 
if __name__=='__main__':
         apple.run(host='0.0.0.0',port=8000,debug=True)  #運行flask http程序,host指定監聽IP,port指定監聽端口,調試時需要開啟debug模式。


3asset功能模塊配置

其它的功能模塊配置相似

 

1) __init__.py文件配置

[root@yang-218 asset]# cat __init__.py

from flask import Blueprint
 
asset=Blueprint('asset',
        __name__,
        #template_folder='/opt/auras/templates/',   #指定模板路徑
         #static_folder='/opt/auras/flask_bootstrap/static/',#指定靜態文件路徑
                   )
 
import views

 

2) views.py文件配置

[root@yang-218 asset]# cat views.py

from flask import  render_template
from asset import asset
 
@asset.route('/')              #指定路由為/,因為run.py中指定了前綴,瀏覽器訪問時,路徑為http://IP/asset/
def index():                         
         print'__name__',__name__
         returnrender_template('asset/index.html')  #返回index.html模板,路徑默認在templates下

 

3)前端頁面配置

[root@yang-218 yangyun]# echo 'This isasset index page...' >templates/asset/index.html

 

4user功能模塊配置

此處配置和上述asset的配置一致

1) __init__.py配置

[root@yang-218 yangyun]# cat  user/__init__.py

from flask import Blueprint
user=Blueprint('user',
                   __name__,
                   )
import views

2) views.py配置

[root@yang-218 yangyun]# cat user/views.py

from flask import  render_template
from user import user
 
@user.route('/')
def index():
         print'__name__',__name__
         returnrender_template('user/index.html')

 

3) 靜態頁面配置

echo 'This is User page....'  >templates/user/index.html

 

5requirements.txt文件配置

主要作用是記錄需要的依賴包,新環境部署時安裝如下依賴包即可,pip安裝命令: pip install -r requirements.txt

[root@yang-218 yangyun]# catrequirements.txt
Flask==0.10.1
Flask-Bootstrap==3.3.5.6
Flask-Login==0.2.11
Flask-SQLAlchemy==2.0
Flask-WTF==0.12

 

6、瀏覽器訪問測試

后端運行程序

[root@yang-218 yangyun]# python run.py
 *Running on http://0.0.0.0:8000/ (Press CTRL+C to quit)
 *Restarting with stat

前端訪問asset頁面

Flask blueprint藍圖按功能模塊化架構實例


前端訪問user頁面

Flask blueprint藍圖按功能模塊化架構實例

為什么出現404?因為在run.py里沒有指定前綴,所以url里不需要加user

Flask blueprint藍圖按功能模塊化架構實例

 以上

 

 

 

 

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桑日县| 彩票| 湖南省| 拜城县| 岚皋县| 三穗县| 东乡县| 长宁区| 剑川县| 宜丰县| 白水县| 深州市| 临泽县| 永安市| 鄯善县| 绥化市| 德钦县| 霍林郭勒市| 芜湖市| 莎车县| 五莲县| 麟游县| 通榆县| 新宾| 重庆市| 乐平市| 邵阳市| 囊谦县| 南澳县| 湖北省| 南投市| 灵石县| 五家渠市| 南澳县| 科技| 石屏县| 浮梁县| 合作市| 全南县| 宽甸| 景洪市|