Ошибка при создании шаблонов при запуске файла .py из командной строки [duplicate]

Если вы находитесь в Windows, вы можете использовать PyGitUp , который является клоном git-up для Python. Вы можете установить его с помощью pip с помощью pip install --user git-up или через Scoop , используя scoop install git-up

[4] [/g3]

33
задан davidism 28 October 2015 в 19:03
поделиться

3 ответа

Вы должны создать свои файлы шаблонов в правильном месте; в подкаталоге templates рядом с вашим модулем python.

Ошибка указывает, что в каталоге templates/ нет файла home.html. Убедитесь, что вы создали этот каталог в том же каталоге, что и ваш модуль python, и что вы действительно поместили файл home.html в этот подкаталог. Если ваше приложение является пакетом, папка шаблонов должна быть создана внутри пакета.

myproject/
    app.py
    templates/
        home.html
myproject/
    mypackage/
        __init__.py
        templates/
            home.html

Кроме того, если вы назвали папку шаблонов чем-то другим чем templates и не хотите переименовывать его по умолчанию, вы можете указать Flask использовать этот другой каталог.

app = Flask(__name__, template_folder='template')  # still relative to module
73
ответ дан jalanb 21 August 2018 в 08:44
поделиться

Я не знаю почему, но вместо этого мне пришлось использовать следующую структуру папок. Я поставил «шаблоны» на один уровень.

project/
    app/
        hello.py
        static/
            main.css
    templates/
        home.html
    venv/

Это, вероятно, указывает на неправильную конфигурацию в другом месте, но я не мог понять, что это такое, и это сработало.

2
ответ дан davidism 21 August 2018 в 08:44
поделиться

Вам нужно поместить все файлы .html в папку шаблона рядом с вашим модулем python. И если в ваших html-файлах есть какие-либо изображения, вам нужно поместить все ваши файлы в папку с именем static

. В следующей структуре

project/
    hello.py
    static/
        image.jpg
        style.css
    templates/
        homepage.html
    virtual/
        filename.json
0
ответ дан Madhusudan chowdary 21 August 2018 в 08:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: