国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Flask框架工廠函數用法實例分析

Flask框架工廠函數用法實例分析

2021-06-29 00:24TKtalk Python

這篇文章主要介紹了Flask框架工廠函數用法,結合實例形式分析了Flask框架工廠函數定義、應用及相關操作注意事項,需要的朋友可以參考下

本文實例講述了Flask框架工廠函數用法。分享給大家供大家參考,具體如下:

在我們開始學習FLask的時候,創建應用的實例是用app=Flask(name)來做的,但是當我們想創建多個不同配置的實例的時候咋辦呢,每次都要改是不是很煩,那為了減少麻煩,我們可以采用調用一個create_app函數來返回應用實例的方法,這就是工廠方法的大概意思啦!

文字說的再多也難以幫助理解,看代碼示例:

1.最初的寫法

?
1
2
3
4
5
6
7
8
#__init__.py里面創建實例,應用實例對象創建完再引入視圖函數的模塊,因為這時候視圖函數上的@app.route()才有效
from flask import Flask
from myapp.admin import admin
import config
app = Flask(__name__)
app.config.from_object('config')
app.register_blueprint(admin)
from myapp import views
?
1
2
3
#run.py里面我們來啟動剛才創建的應用實例
from myapp import app
app.run(host='0.0.0.0')

2.改進,用工廠模式來創建應用

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#__init__.py 改變創建app實例的方式,不之間創建app,而是通過create_app函數里面創建,再返回app對象,這樣的好處就是調用的時候才創建,想創建多少就調用多少,而且每次調用都能應用不同的配置參數,這里面這個create_app()就是應用的工廠方法!在工廠方法里面我們分別加載了配置擴展和藍圖!敲黑板!!!
from flask import Flask
from flask.ext.mail import Mail
from flask.ext.sqlalchemy import SQLAlchemy
from werkzeug.utils import import_string
mail = Mail()
db = SQLAlchemy()
blueprints = [
  'myapp.main:main',
  'myapp.admin:admin',
]
def create_app(config):
  app = Flask(__name__)
  app.config.from_object(config)
  # Load extensions
  mail.init_app(app)
  db.init_app(app)
  # Load blueprints
  for bp_name in blueprints:
    bp = import_string(bp_name)
    app.register_blueprint(bp)
  return app
?
1
2
3
4
#敲黑板!!!需要注意,用了工廠方法之后,就不像在單一文件中一樣有全局的app應用實例對象了,那怎么辦呢,沒有app就不能用裝飾器給視圖函數路由了,這里面我們要畫重點了:Flask的藍圖功能,我們剛才工廠函數里面已經注冊了藍圖了,我們要用藍圖對象路由
from flask import Blueprint
main = Blueprint('main', __name__)
from myapp.main import views
?
1
2
3
4
from myapp.main import main
@main.route('/')
def index():
  return '<h1>Hello World from app factory!</h1>'

run.py用了工廠函數之后,啟動就要調用工廠函數創建應用實例再啟動

?
1
2
3
4
from myapp import create_app
import config
app = create_app('config')
app.run(host='0.0.0.0', debug=True)

希望本文所述對大家基于flask框架的Python程序設計有所幫助。

原文鏈接:https://blog.csdn.net/u013205877/article/details/77802478

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产经典一区 | 欧美精品久久久久 | 国产成人精品一区二区三区四区 | 精品视频一区二区三区在线观看 | 久久奸| 亚洲人免费视频 | 欧美精品一区在线 | 在线观看国产视频 | 日韩免费 | 青娱乐国产精品视频 | 综合久久久 | 99精品99 | 久久精品一区二区国产 | 亚洲欧美在线观看 | 国产精久久久 | 日韩高清一区 | 久久丁香 | 精品亚洲一区二区三区四区五区 | 在线观看一级黄色片 | 中文字幕在线观看第一页 | 久草视频网 | 三级色黄 | 伊人操操| 成人不卡在线观看 | 在线观看欧美一区 | 国产片av | 成人在线观看免费视频 | 国产精品1 | 欧洲视频一区 | 爱色av| 日韩视频精品 | 一区视频网站 | 日韩免费一区 | 精品久久久久久国产 | av一区二区三区四区 | 狠狠视频 | 亚洲天堂影院 | 精品国偷自产国产一区 | 日韩综合区 | 日韩在线免费 | 欧美一区三区 |