Как вы используете url_for
Flask для ссылки на файл в папке? Например, у меня в static
папке есть несколько статических файлов , некоторые из которых могут находиться во вложенных папках, например static/bootstrap
.
Когда я пытаюсь обслужить файл из static/bootstrap
, я получаю сообщение об ошибке.
<link rel=stylesheet type=text/css href="{{ url_for('static/bootstrap', filename='bootstrap.min.css') }}">
Я могу ссылаться на файлы, которые не во вложенных папках, и это работает.
<link rel=stylesheet type=text/css href="{{ url_for('static', filename='bootstrap.min.css') }}">
Как правильно ссылаться на статические файлы url_for
? Как использовать url_for
для создания URL-адресов статических файлов на любом уровне?
Flask
добавляется правило URL-адреса дляstatic
конечной точки, поэтому изменение этих атрибутов вFlask
экземпляре не влияет наurl_for('static', ...)
результат. Чтобы изменить пост-инициализацию статической конечной точки, см. Суть gist.github.com/brycepg/593ffb5ce9316d2871c7f24f9de34c24В моем случае у меня была специальная инструкция в файле конфигурации nginx:
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ { try_files $uri =404; }
Все клиенты получили 404, потому что nginx ничего не знал о Flask.
Надеюсь, это кому-то поможет.
источник