Пример колбы-автоиндекс и ленивая загрузка
В настоящее время у меня есть это в моем сценарии:
index = AutoIndex(app, browse_root=dir_to_index, add_url_rules=False)
@app.route('/indexed')
@app.route('/<path:path>')
def autoindex(app=None, path='.'):
return index.render_autoindex(path, template='indexed_dir.html', endpoint='.autoindex')
Я хотел бы использовать ленивое представление вместо этого для лучшего разделения моей логики: то есть
views.py
from flask import render_template
def autoindex(app=None, path='.'):
return index.render_autoindex(path, template='indexed_dir.html', endpoint='.autoindex')
Тогда в моем сценарии что-то вроде:
app.add_url_rule('/indexed', view_func=views.autoindex)
Однако, поскольку у меня есть два декоратора, я не уверен, как лучше всего это сделать. Кроме того, я считаю, что мне, возможно, придется иметь дело с контекстом приложения / запроса.
Любая помощь высоко ценится. Заранее спасибо.
1 ответ
Каждый звонок route
это просто еще один вызов add_url_rule
под капотом:
app.add_url_rule('/indexed', view_func=views.autoindex)
app.add_url_rule('/<path:path>', view_func=views.autoindex)