0Pricing
Flask Academy · Урок

Обновление кэша с помощью версий файлов

Заставляйте браузеры загружать обновлённые ресурсы.

«Обновление кэша с помощью версий файлов» — бесплатный урок Flask Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Flask Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Flask Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Browsers Love to Cache

Browsers save assets to load pages faster. That is great until you ship a new style.css and visitors keep seeing the cached old one. 🗂️

The Stale Asset Problem

If the URL stays /static/style.css forever, the browser assumes nothing changed. Your fresh design simply never reaches the user.

Change the URL to Refetch

The fix is cache busting: change the asset URL whenever the file changes. A new URL forces the browser to download again.

A Version Query String

The simplest trick adds a version query parameter. /static/style.css?v=2 is treated as a new resource by the browser.

<link href="{{ url_for('static', filename='style.css') }}?v=2">

Bump It on Each Release

Each time you deploy changed CSS, raise the v number. A central variable beats editing the value in many templates by hand.

Use the File's mtime

A smarter bust uses the file modification time. Read getmtime so the version changes only when the file actually does.

import os
v = int(os.path.getmtime("static/style.css"))

Let url_for Carry Extras

Any unknown keyword you pass url_for becomes a query parameter, so you can attach a computed version cleanly.

url_for("static", filename="style.css", v=v)
# -> /static/style.css?v=1718000000

Content Hashes Are Best

The strongest approach names files by a hash of their contents, like style.abc123.css. New contents mean a new name and a guaranteed refetch.

Hashes Enable Long Caching

Because a hashed name only changes when contents change, you can cache it almost forever. Speed and freshness stop fighting each other.

Build Tools Do the Work

Asset bundlers generate hashed filenames and a manifest mapping logical names to hashed ones, so your templates ask for the current build.

Pick the Right Tier

Start with a simple ?v= version for small projects. Move to content hashes once a build pipeline is worth the setup.

Quick Check

Why does adding ?v=2 to an asset URL make the browser fetch a fresh copy?

Recap: Cache Busting

You learned to change asset URLs so browsers refetch updates: a version query for small apps, content hashes for serious builds. 🚀

Часто задаваемые вопросы

Урок «Обновление кэша с помощью версий файлов» бесплатный?

Да — полный текст урока «Обновление кэша с помощью версий файлов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Flask Academy, подпишись на CoddyKit PRO. Курс Flask Academy содержит 4 уроков всего.

Чему я научусь в уроке «Обновление кэша с помощью версий файлов»?

Заставляйте браузеры загружать обновлённые ресурсы. Ты практикуешь Flask Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Flask Academy?

Предыдущий опыт не требуется. Flask Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Обновление кэша с помощью версий файлов»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Flask Academy?

Да. Каждый урок Flask Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Соглашение о папке static
  2. Подключение ресурсов через url_for static
  3. Обновление кэша с помощью версий файлов
  4. Статические файлы в рабочей среде
← Назад к Flask Academy