请选择 进入手机版 | 继续访问电脑版
查看: 852|回复: 45

Flask blueprint蓝图按功能模块化架构实例

34

主题

34

帖子

138

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
138
羊大仙 发表于 2015-12-10 21:51:07 | 显示全部楼层 |阅读模式

使用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, image等
└── 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页面


前端访问user页面

wKiom1X6EwyDfQ7XAABu-gqfM60350.jpg

为什么出现404?因为在run.py里没有指定前缀,所以url里不需要加user

wKioL1X6FUSyI3DjAAA7JI0SKS0527.jpg

 以上

 

 

 

 

 


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

2489

主题

2783

帖子

8100

积分

论坛元老

Rank: 8Rank: 8

积分
8100
ChrOffinny 发表于 2017-5-24 07:27:31 | 显示全部楼层
What Does Cialis For Daily Use Cost 105  Online Cialis Buy Amitriptyline Online Uk Viagra Equivalent Sans Ordonnance  Cheap Cialis Generic Le Viagra En Ligne Il Cialis Alza La Pressione  Cheap Viagra On Line Secure Stendra Cheapeast On Line Hereford Keflex And Being Pregnant  Shop Zoloft Online Online Phamaces Amoxicilline Teva 250mg 5ml  Fast Delivery Prozac Cephalexin Bad Breath Kamagra 100mg France  Zoloft Online Pharmacy Antibiotics Flagyl Mexican Pharmacies Online  Zoloft Online Usa Propecia Minoxidil Together Priligy Zuzahlung  Cytotec Free Offer Manyfacturing Amoxicillin Where To Buy Nizoral Pills  How To Buy Zoloft Low Cost Sildenfil Citrate Buy Cheap Levitra  Compra Viagra Online Where To Buy Viagra For Men Zentel Capillariasis No Physician Approval  Buy Cialis Online Usa Cialis Que Cantidad Vad Ar Priligy  Cost Of Zoloft Levitra Effetti Collaterali Farmacia Is Priligy Safe  How To Buy Cialis Vente Cialis 10 Sale Generic Worldwide Stendra 50mg Medication Overnight Fedex Wakefield  How To Order Zoloft Cialis Original Precio Farmacia Vardenafil Levitra  Cheap Viagra Pill 1 3 Days Shipping On Ed Pills Acheter Amoxicillin Pharmacie Au Rabais Vallee D Aoste  Kamagra Online Fast Where To Buy Avanafil Rezept Viagra Generika  Zoloft Online Cs El Cialis Sirve Para La Mujer Propecia Generic Proscar Finasteride  Canadian Viagra Baclofen Generique 10mg Prix Du Cialis 20 Mg  Viagra Online Blue Dutasteride Australia Antibiotics  Cialis Free Offer Priligy Or Viagra Discount fedex isotretinoin with overnight delivery medication overseas  Generic Zoloft Usa Inexpensive Cialis Online Cheap Ed Meds Uk  Cost Of Viagra Priligy 60 Mg Prix Buy Dapoxetine Hydrochloride  Buy Real Viagra Online Canadian Health Mall Meds Keflex Decrease  Cialis Buy Kamagra Oral Jelly Miglior Prezzo What The Diffencebetween Venlafaxine  Kamagra Order Qu'Est Sildenafil Generique 20 Mg  Cialis Price Cialis Levitra O Viagra Baclofene Acheter En Ligne  Internet Order Viagra Comprare Levitra On Line Propecia Con Como Preparar  Generic Cialis Pricing Vimedic Cialis Y Priligy  Buy Cheap Kamagra Healthy Man Blue Pill Buy Celebrex Celecoxib 200 Mg  Ordering Cialis Online Propecia Shop Pill Cialis E Altri  Cialis 20mg Price Cialis Generika Gut Buy Brand Name Propecia  Purchase Cheap Cialis Cialis Overnight Delivery Us Cialis Mejor Viagra  Buy Zoloft On Line Cialis Da 20 Que Es Viagra Y Para Que Se Usa  Low Cost Cialis Online Generic Viagra Sildenafil Citrate Viagra Canada Price  How To Buy Cialis Buy Lasix Canada Viagra Online Bestellen Forum  Inderal Buy Clomid Amenorrhee Avec Top Hair Loss Products Propecia And Rogaine  Ordering Kamagra Online 90 Pills Extra Super Cialis Clomid Without Prescriptions Mexico  Zoloft Order Isotretinoin 10mg Skin Health What Does Levitra Look Like  Generic Cialis Pricing Cialis A Prezzo Basso Lithium Without Prescription  Viagra Online Cheap Weight And Propecia Propecia Result Photos  Shop Cialis Online Cheap Effexor
回复 支持 反对

使用道具 举报

70

主题

82

帖子

306

积分

中级会员

Rank: 3Rank: 3

积分
306
HaroImpera 发表于 2017-10-9 16:56:11 | 显示全部楼层
Cherche Viagra Suisse Cialis Medikament Bestellen  cialis Offres De Dapoxetine Precio Cialis Cialis Order Propecia Online Consultation  
回复 支持 反对

使用道具 举报

70

主题

82

帖子

306

积分

中级会员

Rank: 3Rank: 3

积分
306
HaroImpera 发表于 2017-10-25 05:58:13 | 显示全部楼层
Mail Order Fluoxetine Margrilan Medicine Free Shipping Pharmacy Buy Cialis With No Perscription Comprar AllРС–Р’В Adelgazante Online  generic viagra Purchasing Progesterone Website With Free Shipping Furasemidum To Buy Uk  
回复 支持 反对

使用道具 举报

13

主题

24

帖子

79

积分

注册会员

Rank: 2

积分
79
MiguSlatte 发表于 2017-10-29 19:48:30 | 显示全部楼层
Achat Pillule Viagra En Montreuil Dosage Of Amoxicillin For Respiratory Disorder Order Finasteride Online Generic Propecia  viagra Viagra Depoxetine Safety Of Zithromax In Pregnancy  
回复 支持 反对

使用道具 举报

0

主题

276

帖子

556

积分

高级会员

Rank: 4

积分
556
chenyingying 发表于 2017-11-3 13:53:41 | 显示全部楼层
north face jackets
burberry scarves
mbt outlet
ugg outlet
moncler outlet
giuseppe zanotti sneakers
christian louboutin uk
cheap jordan shoes
soccer jerseys
michael kors uk
cheap jordan shoes
ugg schweiz
carrera sunglasses
nike uk
ugg boots
uggs classic boots
coach factory online
moncler dunjacka
coach outlet
north face jackets
tory burch outlet
kate spade outlet
d&g sunglasses
coach wallets
christian louboutin outlet
cheap nhl jerseys
hermes birkin bag
ugg boots
ugg outlet
cheap nfl jerseys
ugg outlet store
coach outlet
nike running uk
ugg boots
coach bags
ray ban sunglasses outlet
ralph lauren polo shirts
michael kors outlet
canada goose outlet
doudoune canada goose
coach factory outlet
cheap jordans
fitflops shoes
hermes belt outlet
kate spade outlet online
chicago blackhawks jersey
cheap ray ban sunglasses
manolo blahnik outlet
uggs outlet
true religion jeans
oakley sunglasses cheap
tory burch outlet
coach outlet online 70% off
michael kors
cheap oakley sunglasses
adidas outlet clearance
polo ralph lauren
montblanc pen
ray ban sunglasses
cheap nfl jerseys
fitflops sale clearance
coach factory outlet online
longchamp handbags
oakley sunglasses outlet
burberry scarf
cheap ray ban sunglasses
canada goose outlet
ugg outlet
michael kors outlet clearance
coach outlet online
ralph lauren outlet
canada goose nederland
nike jordans
coach outlet 70% off
nike air max
uggs uk
ugg factory outlet
nike nfl jerseys
longchamp bags
adidas wings
ugg outlet
north face outlet
air jordan pas cher
coach outlet online
ugg sale
louis vuitton
pandora charms
air max thea
air max 90
canada goose jackets
coach outlet
michael kors outlet clearance
nike store
converse shoes
longchamp outlet store
cheap ugg boots
north face clearance
ugg outlet online
ugg boots
oakley vault
chenyingying20171103
回复 支持 反对

使用道具 举报

70

主题

82

帖子

306

积分

中级会员

Rank: 3Rank: 3

积分
306
HaroImpera 发表于 2017-11-5 19:19:49 | 显示全部楼层
Cephalexin Renal Failure Levitra Pareri Lioresal Novartis  viagra Pharmacy Cheapest Reviews Where To Purchase Clobetasol 30g From Canada Cash Delivery Cialias  
回复 支持 反对

使用道具 举报

13

主题

24

帖子

79

积分

注册会员

Rank: 2

积分
79
MiguSlatte 发表于 2017-11-17 04:22:15 | 显示全部楼层
Opiniones Kamagra Gel Kamagra Pas Cher 100 Mg  how cau you order levitra on line Viagra A Sharm  
回复 支持 反对

使用道具 举报

0

主题

276

帖子

556

积分

高级会员

Rank: 4

积分
556
chenyingying 发表于 2017-11-20 10:17:26 | 显示全部楼层
回复 支持 反对

使用道具 举报

75

主题

76

帖子

233

积分

中级会员

Rank: 3Rank: 3

积分
233
Alfreddam 发表于 2017-11-25 15:13:20 | 显示全部楼层
cialis cost at walgreens

      cialis online

    <a href="http://cialisorderas.com/">buy cialis</a>

    comprar cialis calidad
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表