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

170
26 апреля 2021, 19:10

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

body{
    color: red;
}

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

body{
    background-color: red;
}

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

Answer 1

Это происходит из-за того что файлы стилей кэшируются у тебя в браузере.

Отчистить кэш можно с помощью CTRL+F5.

Но пользователи твоего приложения не будут сбрасывать кэш каждый раз, когда заходят на твой сайт.

Можно отключить кэширование совсем

app.config['SEND_FILE_MAX_AGE_DEFAULT'] = 0

Но более правильным подходом является указывать версию у твоих стилей, каждый раз когда ты их изменяешь. Так браузер сам обновит кэш, когда увидит, что у пользователя старая версия. v=1, v=2 и так далее.

<link rel="stylesheet" type="text/css" href="{{ url_for( 'static', filename='style.css', v=1)}}">
Answer 2

Попробуйте в самом приложении Flask, сделать такую настройку

if __name__ == '__main__':
    app.run(debug=True)

Подключить статику в темплейте таким образом

<link rel="stylesheet" type="text/css" href="{{ url_for( 'static', filename='index.css')}}">

Либо попробуйте CTRL+SHIFT+R в браузере (если у вас хром), сделать жесткую перезагрузку страницы.

READ ALSO
Доступ к textarea другого html-файла

Доступ к textarea другого html-файла

У меня есть два html-файлаВ первом содержатся чекбоксы, при выборе которых формируется текст

83
Как убрать у изображения надписи &ldquo;открыть изображение в новой вкладке&rdquo; и т.п.?

Как убрать у изображения надписи “открыть изображение в новой вкладке” и т.п.?

У меня есть логотип "VK", при нажатии на который меня перекидывает на мою страничку

83
Влияние &lt;!doctype html&gt; на тэг &lt;br&gt;

Влияние <!doctype html> на тэг <br>

Заметил одну особенностьЕсть нормальная страница с <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4

93
Unity: сигнал при изменении Toggle

Unity: сигнал при изменении Toggle

У меня есть стандартный ToggleGroupВ нём много Toggle-ов, а один из них выбран

91