Как переопределить стандартную тему начальной загрузки в среде flask_bootstrap
Я делаю заявку, используя колбу и flask_bootstrap.
Я выбираю тему с этого сайта. Вы можете редактировать переменные этой темы онлайн, чтобы настроить ее. И, наконец, вы можете скачать результат редактирования как bootstrap.css
на ваш местный.
Теперь я должен скопировать и вставить этот bootstrap.css в venv/lib/python3.4/site-packages/flask_bootstrap/static/css
и перезаписать оригинал. Только так я могу поддерживать работу моего сайта с сообщением об ошибке. Но каждый раз, когда я обновляю flask_bootstrap
в виртуальной среде pip, я должен скопировать и вставить файл CSS еще раз. Мне скучно, и я считаю, что должно быть решение.
Я пытался поставить настроенный сайт-сгенерированный bootstrap.css
в моем собственном static
папка и добавить <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='theme_page.css') }}" />
ссылка. Но всплывают сообщения об ошибках, например: "GET /fonts/glyphicons-halflings-regular.woff2 HTTP/1.1" 404 -
, Я знаю, что это потому, что в настроенном файле CSS есть ссылка на папку шрифтов, но очевидно, что мой собственный static
папка не та, которая находится в venv.../flask_bootstrap/static
и действительно включать /fonts
,
Так что хорошего предложения? Спасибо!
1 ответ
То, что я сделал, это вынуло строки, включая ссылку на внешние файлы (так что шрифты) из кастома bootstrap.css
и включить их в мой базовый шаблон в {% block styles %}
с:
<style>
@font-face {
font-family: 'Glyphicons Halflings';
src: url('{{ url_for("bootstrap.static", filename="fonts/glyphicons-halflings-regular.eot") }}');
src: url('{{ url_for("bootstrap.static", filename="fonts/glyphicons-halflings-regular.eot?#iefix") }}') format('embedded-opentype'),
url('{{ url_for("bootstrap.static", filename="fonts/glyphicons-halflings-regular.woff2") }}') format('woff2'),
url('{{ url_for("bootstrap.static", filename="fonts/glyphicons-halflings-regular.woff") }}') format('woff'),
url('{{ url_for("bootstrap.static", filename="fonts/glyphicons-halflings-regular.ttf") }}') format('truetype'),
url('{{ url_for("bootstrap.static", filename="fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") }}') format('svg');
}
</style>
Это будет искать шрифты в исходном месте, которые могут быть обновлены.
Или вы можете поместить их в шаблон и использовать что-то вроде:
<style>
{% include "_bootstrap_fonts.css" %}
</style>