首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法用BluePrints瓶找到模板

无法用BluePrints瓶找到模板
EN

Stack Overflow用户
提问于 2017-05-26 08:56:11
回答 1查看 584关注 0票数 1

我正在尝试采用模块化的方法来设计我的烧瓶应用程序。

所以每个模块都是多路的。见下文

模板文件夹

我的home_routes.py的内容

代码语言:javascript
复制
from flask import Blueprint, request, session, abort
from flask import render_template


def home_blueprints(app):
    home_routes = Blueprint("home_routes", __name__, template_folder='../../templates', static_folder='../../static')

    @home_routes.route('/home/Links')
    def links():
        return render_template('links.html')

    @home_routes.route('/home/Confirmation')
    def confirmation():
        return render_template('Confirmation.html')

    @home_routes.route('/')
    def main():
        return render_template('main.html')

    @home_routes.route('/home/Contactus', methods=['GET', 'POST'])
    def contact():
        if request.method == "POST":
            token = session.pop('_csrf_token', None)
            if not token or token != request.form.get('_csrf_token'):
                abort(403)
        return render_template('GoogleForm.html')


    app.register_blueprint(home_routes)

believe_routes.py含量

代码语言:javascript
复制
from flask import Blueprint
from flask import render_template


def believe_blueprints(app):
    believe_routes = Blueprint("believe_routes", __name__, template_folder='../../templates', static_folder='../../static')

    @believe_routes.route('/home/Believe/Truth_About_God')
    def truth_about_God():
        return render_template('The_Truth_Concerning_God.html')

    @believe_routes.route('/home/Believe/Truth_We_Believe')
    def the_truth_we_beleive():
        return render_template('The_Truth_We_Believe.html')

    @believe_routes.route('/home/Believe/Truth_About_Christ')
    def truth_about_christ():
        return render_template('The_Truth_About_Christ.html')

    @believe_routes.route('/home/Believe/Truth_About_Church')
    def truth_about_church():
        return render_template('The_Truth_About_Church.html')

    @believe_routes.route('/home/Believe/Truth_About_Salvation')
    def truth_about_salvation():
        return render_template('The_Truth_About_Salvation.html')

    @believe_routes.route('/Believe')
    def truth_we_believe():
        return render_template('Truth_We_Believe.html')

    app.register_blueprint(believe_routes)

init.py的含量

代码语言:javascript
复制
from home_routes import home_blueprints
from believe_routes import believe_blueprints

def configure_blueprints(app):
    home_blueprints(app)
    believe_blueprints(app)

只有home_routes起作用。believe_routes中的URL不起作用。我得到404

代码语言:javascript
复制
INFO     2017-05-26 18:01:44,325 module.py:813] default: "GET /home/Believe/Truth_About_Christ HTTP/1.1" 404 233

我从create_app调用create_app(App),然后从main.py调用。

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2017-05-26 09:55:42

404不是因为模板的原因,也许您可以尝试这段代码来查看是否将蓝图注册为flask实例,并且可以将输出放回了解更多细节.

代码语言:javascript
复制
#!/usr/bin/env python
# encoding: utf-8
from flask import Flask

from home_routes import home_blueprints
from believe_routes import believe_blueprints


app = Flask('demo')


def configure_blueprints(app):
    home_blueprints(app)
    believe_blueprints(app)

configure_blueprints(app)
print(app.url_map)

我希望这能帮你..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44197505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档