我刚开始使用Flask,在添加其他内容之前,我一直在一个非常简单的网站上工作,以了解它的主要功能,在我看来,我遇到了一个难以理解的问题。我看了很多教程,不知道哪里出了问题。我的站点目录很简单:
home/user/website_name
├── ock/
│ ├── __init__.py
│ ├── .env
│ ├── routes.py
│ ├── templates/
│ │ ├── base.html
│ │ └── home.html
│ └── static/
│ └── style.css
├── instance/
│ └── config.py
├── venv/
├── setup.py
└── wsgi.py
__init__.py
在这里:
from flask import Flask, render_template
def make_app():
app = Flask(__name__, instance_relative_config=True)
app.config.from_pyfile('config.py')
from . import routes
app.register_blueprint(pages)
routes.py
在这里:
from flask import render_template, Blueprint
from wsgi import app
bp = Blueprint(
'pages', __name__,
template_folder='templates',
static_folder='static'
)
@app.route('/')
@app.route('/index')
@app.route('/home')
def home():
return render_template(
'home.html',
)
当我试着去http://127.0.0.1:5000/home,它吐出:名称错误:未定义名称"pages"。
编辑以澄清问题:如何让Flask认可蓝图?
我想好了如何让它工作。我所做的只是将app.register_blueprint(pages)
修改为app.register_blueprint(routes.pages)
。我想这告诉了弗拉斯克在哪里寻找蓝图?
还有很多东西要学。