Если вы хотите увидеть пример использования Blueprint
, вы можете взглянуть на этот ответ .
О части «автоматического поиска шаблонов» вашего вопроса: как объясняет документация, чертежи позволяют указать папку, в которой будут искать статические файлы и / или шаблоны, таким образом, вам не нужно указывать полный Путь к файлу шаблона в вашем вызове render_template()
, но только имя файла.
Если вы хотите, чтобы ваши представления «волшебным образом» знали, какой файл они должны выбрать, вам нужно немного взломать. Например, решением может быть применение декоратора к вашему представлению, который заставит его выбрать файл шаблона на основе имени функции, такой декоратор будет выглядеть так:
from functools import wraps
from flask import render_template
def autorender(func):
@wraps(func)
def wrapper(*args, **kwargs):
context = func(*args, **kwargs)
return render_template('%s.html' % func.func_name, **context)
return wrapper
Тогда вам просто нужно будет вернуть контекст в вашем представлении в виде диктата (или пустого диктанта, если контекст отсутствует):
@my_blueprint.route('/')
@autorender
def index():
return {'name': 'John'} # or whatever your context is
И он автоматически выберет шаблон с именем index.html
.