Невозможно решить ошибку Flask blueprint 404 - PullRequest
0 голосов
/ 04 июля 2019

Я сейчас работаю над приложением flask_app.Это структура моего проекта

├── pypi_org
│   ├── __pycache__
│   │   └── app.cpython-37.pyc
│   ├── app.py
│   ├── services
│   │   └── package_services.py
│   ├── static
│   │   ├── css
│   │   │   └── site.css
│   │   ├── html
│   │   └── js
│   ├── templates
│   │   ├── home
│   │   │   ├── about.html
│   │   │   └── index.html
│   │   ├── packages
│   │   │   └── details.html
│   │   └── shared
│   │       └── _layout.html
│   ├── tests
│   ├── viewmodels
│   └── views
│       ├── home_views.py
│       └── package_views.py
├── requirements-dev.txt
└── requirements.text

Я определил план в home_views.py

from flask import render_template
from flask import Blueprint
from pypi_org.services import package_services

blueprint = Blueprint('home', __name__, template_folder='templates')


@blueprint.route('/')
def index():
    test_packages = package_services.get_latest_packages()
    return render_template('home/index.html', packages=test_packages)


@blueprint.route('/about')
def about():
    return render_template('home/about.html')

Код для app.py приведен ниже

from flask import Flask
from pypi_org.views import home_views, package_views

app = Flask(__name__)


def main():
    register_blueprints()
    app.run(debug=True)


def register_blueprints():
    app.register_blueprint(home_views.blueprint)
    app.register_blueprint(package_views.blueprint)


if __name__ == '__main__':
    main()

КогдаЯ запускаю app.py, я получаю ошибку 404.Я не уверен, что я делаю неправильно.Все выглядит правильно.

Может кто-нибудь взглянуть?

1 Ответ

0 голосов
/ 05 июля 2019

template_folder = 'templates' может искать неправильный уровень в иерархии каталогов.

например, вы можете попробовать что-то вроде ..

blueprint = Blueprint('home', __name__, template_folder='../templates')

или аналогичный, чтобы увидеть, если вы можете найти правильный уровень структуры вашего проекта, чтобы правильно найти каталог шаблонов.

Вы можете найти больше информации по теме в этом сообщении.

...