Пример колбы-автоиндекс и ленивая загрузка

В настоящее время у меня есть это в моем сценарии:

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)
Другие вопросы по тегам