Flask как подключить css
Перейти к содержимому

Flask как подключить css

  • автор:

Flask не видит css файл подключенные к html шаблону, что делать?

ОТВЕТ:
Во всем интернете не было информации по этому поводу, что достаточно странно, или я просто не умею гуглить
Следует добавить во фласк строку
static_path = os.path.join(project_root, ‘../client/static’)
А app перезаписать как
app = Flask(__name__, template_folder=template_path, static_folder=static_path)
Все заработало

При попытке подключить css файл к html, используя Flask, он просто не находится.
404

Подключаю не просто так
+
Мб дело в том, что для того чтобы подключить html к Flask я так же прописывал
import os
import sys
project_root = os.path.dirname(__file__)
template_path = os.path.join(project_root, ‘../client’)
app = Flask(__name__, template_folder=template_path)

  • Вопрос задан более трёх лет назад
  • 6492 просмотра

Неправильно подключается статический CSS файл к Flask

У меня возникла странная ситуация. Я создал простое приложение на Flask и решил попробовать подключить к нему CSS файл. Создал папку static добавил туда css файл. Вот содержимое файла:

body

Все работало, весь текст приобрел красный цвет. Затем я изменил содержимое этого файла

body

Я сохранил файл, перезапустил сервер, обновил сайт, но он остался таким каким был. После этого я вообще удалил все из CSS файла, сохранил его, перезапустил сервер, обновил сайт, но там все так-же был красный цвет! Кто знает почему при изменении CSS файла он как-будто не меняется?

Шаг 7: Добавление стиля¶

Теперь, когда всё остальное работает, пришло время, чтобы придать приложению немного стиля. Просто создайте в папке static , которую мы создавали до этого, таблицу стилей, в файле с именем style.css :

body  font-family: sans-serif; background: #eee; > a, h1, h2  color: #377ba8; > h1, h2  font-family: 'Georgia', serif; margin: 0; > h1  border-bottom: 2px solid #eee; > h2  font-size: 1.2em; > .page  margin: 2em auto; width: 35em; border: 5px solid #ccc; padding: 0.8em; background: white; > .entries  list-style: none; margin: 0; padding: 0; > .entries li  margin: 0.8em 1.2em; > .entries li h2  margin-left: -1em; > .add-entry  font-size: 0.9em; border-bottom: 1px solid #ccc; > .add-entry dl  font-weight: bold; > .metanav  text-align: right; font-size: 0.8em; padding: 0.3em; margin-bottom: 1em; background: #fafafa; > .flash  background: #cee5F5; padding: 0.5em; border: 1px solid #aacbe2; > .error  background: #f0d6d6; padding: 0.5em; > 

#9 Работа со статическими файлами во Flask

Статические файлы — это файлы, которые не изменяются часто. Это, например, файлы CSS, JavaScript, шрифты и так далее. По умолчанию Flask ищет статические файлы в папке static , которая хранится в папке приложения. Это поведение можно поменять, передав аргументу-ключевому слову static_folder название новой папки при создании экземпляра приложения:

app = Flask(__name__, static_folder="static_dir") 

Это изменит расположение статических файлов по умолчанию на папку static_dir внутри папки приложения.

Пока что можно остановиться на папке по умолчанию, statiс . Сперва нужно создать папку static в папке flask_app . В static создаем CSS-файл style.css со следующим содержимым.

body  color: red > 

Стоит вспомнить, что в уроке «Основы Flask» речь шла о том, что Flask автоматически добавляет путь в формате /static/ для обработки статических файлов. Поэтому все, что остается — создать URL с помощью функции url_for() :

script src token property">url_for('static', filename='jquery.js') >>">script> 
script src="/static/jquery.js">script> 

Дальше необходимо открыть шаблон index.html и добавить тег :

 html lang="en"> head> meta charset="UTF-8"> title>Titletitle> link rel="stylesheet" href token property">url_for('static', filename='style.css') >>"> head> . 

Если сервер не запущен, его нужно запустить и открыть https://localhost:5000/ . Там будет страница с красным текстом:

Добавление стилей во Flask

Этот метод работы со статическими файлов подходит только для разработки. При создании реальных приложений используются реальные веб-сервера, такие как Nginx или Apache.

  • ТЕГИ
  • Flask
  • Уроки по Flask на русском

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *