国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

flask中使用藍圖將路由分開寫在不同文件實例解析

2020-02-22 22:54:28
字體:
來源:轉載
供稿:網友

本文的內容主要是flask中使用藍圖將路由分開寫在不同文件的相關介紹,具體如下。

Flask 用 藍圖(blueprints) 的概念來在一個應用中或跨應用制作應用組件和支持通用的模式。藍圖很好地簡化了大型應用工作的方式,并提供給 Flask 擴展在應用上注冊操作的核心方法。一個Blueprint 對象與Flask 應用對象的工作方式很像,但它確實不是一個應用,而是一個描述如何構建或擴展應用的藍圖 。

Flask 中的藍圖為這些情況設計:

把一個應用分解為一個藍圖的集合。這對大型應用是理想的。一個項目可以實例化一個應用對象,初始化幾個擴展,并注冊一集合的藍圖。

以 URL 前綴和/或子域名,在應用上注冊一個藍圖。 URL 前綴/子域名中的參數即成為這個藍圖下的所有視圖函數的共同的視圖參數(默認情況下)。

在一個應用中用不同的 URL 規則多次注冊一個藍圖。

通過藍圖提供模板過濾器、靜態文件、模板和其它功能。一個藍圖不一定要實現應用或者視圖函數。

初始化一個 Flask 擴展時,在這些情況中注冊一個藍圖。

Flask 中的藍圖不是即插應用,因為它實際上并不是一個應用——它是可以注冊,甚至可以多次注冊到應用上的操作集合。為什么不使用多個應用對象?你可以做到那樣(見應用調度 ),但是你的應用的配置是分開的,并在 WSGI 層管理。

藍圖作為 Flask 層提供分割的替代,共享應用配置,并且在必要情況下可以更改所注冊的應用對象。它的缺點是你不能在應用創建后撤銷注冊一個藍圖而不銷毀整個應用對象。

以上內容來自Flask0.10.1文檔

測試項目結構:

user.py:

#coding:utf-8 #user from flask import Blueprint, render_template, redirect user = Blueprint('user',__name__)  @user.route('/index') def index():   return render_template('user/index.html') @user.route('/add') def add():   return 'user_add' @user.route('/show') def show():   return 'user_show' 

admin.py:

# coding:utf-8 #admin.py from flask import Blueprint,render_template, request admin = Blueprint('admin',__name__)  @admin.route('/index') def index():   return render_template('admin/index.html') @admin.route('/add') def add():   return 'admin_add' @admin.route('/show') def show():   return 'admin_show' 

view.py:

# coding:utf-8 from flask import Flask,request,render_template from admin.admin import admin from user.user import user app=Flask(__name__) app.register_blueprint(admin,url_prefix='/admin') app.register_blueprint(user, url_prefix='/user') if __name__ == '__main__':   app.run()             
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 齐河县| 宁陵县| 林口县| 蒙阴县| 西青区| 南康市| 手机| 堆龙德庆县| 宝兴县| 花莲县| 宝山区| 富宁县| 永仁县| 剑川县| 惠州市| 遂川县| 万安县| 松滋市| 张掖市| 西畴县| 弋阳县| 斗六市| 罗山县| 德格县| 天长市| 安康市| 疏附县| 东港市| 中江县| 义马市| 丘北县| 子长县| 边坝县| 都江堰市| 嘉善县| 肃宁县| 祁门县| 资溪县| 永年县| 江油市| 布拖县|