# Flask 路由系統(tǒng) #
##?
## 方法一:使用系統(tǒng)路由,在app.py中有個(gè)例子 ## ##
????@app.route('/')
????def index():
????return ops_render("index/index.html")*
ops__render是我自己在render__template的基礎(chǔ)上中封裝的傳參方法
????from flask import g,render_template
????import datetime
????def ops_render( template,context = {}):
????if 'current_user' in g:
????context['current_user'] = g.current_user
????return??render_template(template,**context)
## 方法二:使用藍(lán)圖進(jìn)行路由分離: ##
????from flask import Blueprint
????from common.libs.UserService.helper import ops_render
????route_food = Blueprint( 'food_page',__name__ )
????@route_food.route( "/index" )
????def index():
????return ops_render( "food/index.html" )
引入藍(lán)圖-定義藍(lán)圖名-根據(jù)藍(lán)圖名寫(xiě)路由
在app.py文件里
????from controllers.food.Food import route_food
????app.register_blueprint(route_food,url_prefix='/food')
url_prefix中填寫(xiě)統(tǒng)一路由名
**附:對(duì)路由統(tǒng)一管理:**
pytho方法
????# -*- coding: utf-8 -*-
????import??time
????class UrlManager(object):
????def __init__(self):
????pass
????@staticmethod
????def buildUrl( path ):
????return path
????@staticmethod
????def buildStaticUrl(path):
????ver = "%s"%( 22222222 )
????path =??"/static" + path + "?ver=" + ver
????return UrlManager.buildUrl( path )
js方法
????buildUrl:function( path,params){
????var url = "" +path;
????var _paraUrl = "";
????if (params){
????_paraUrl =object.keys( params ).map(function(k){
????return[encodeURIComponent( k ),encodeURIComponent( params[k])].join("=")
????}).join("&")
????_paraUrl ="?"+_paraUrl
????}
????return url +_paraUrl;
????$(document).ready( function() {
????common_ops.init();
????})
????}
????var??x ={
}