Подтвердить что ты не робот

Более статический путь в локальном экземпляре Flask

Возможно ли добавить дополнительные статические пути для моего локального экземпляра Flask? Я хочу иметь папку по умолчанию static для хранения файлов js/css/images для сайта и другой папки, например. designs сохранить мои конкретные активы. Я не хочу размещать designs папку внутри static, если существует лучшее решение.

4b9b3361

Ответ 1

Я использовал следующий подход:

# Custom static data
@app.route('/cdn/<path:filename>')
def custom_static(filename):
    return send_from_directory(app.config['CUSTOM_STATIC_PATH'], filename)

Переменная CUSTOM_STATIC_PATH определена в моей конфигурации.

И в шаблонах:

{{ url_for('custom_static', filename='foo') }}

Caveat emptor - я не уверен, что он защищен;)

Ответ 2

Вы можете использовать Blueprint со своим собственным статическим каталогом http://flask.pocoo.org/docs/blueprints/

Чертеж

blueprint = Blueprint('site', __name__, static_url_path='/static/site', static_folder='path/to/files')
app.register_blueprint(blueprint)

Шаблон

{{ url_for('site.static', filename='filename') }}