У меня в проекте у пользователей есть возможность обновлять некоторое изображение, которые напрямую сохраняются на сервере с помощью FileSystemStorage, модуля os и такого кода:
if response.FILES.get("izobrazhenie", False):
form = forms.UploadIzobrazhenieForm(response.POST, response.FILES)
if form.is_valid():
_ = response.FILES["izobrazhenie"]
fss = FileSystemStorage()
name_of_new_file = os.path.join(BASE_DIR, f"static/{response.user.pk}{_.name[-4:]}")
try:
os.remove(name_of_new_file)
except FileNotFoundError:
pass
finally:
fss.save(name_of_new_file, _)
Однако когда после обновления пользователь проверяет успешное его применение, то ему показывается старое, не обновленное изображение, хотя на самом сервере оно было обновлено и если открыть файл по указанному пути, он был изменен. Отображаю файл при помощи такого html-кода:
<img src="ТУТ ФОРМИРУЕТСЯ ССЛЫКА" alt="izobrazhenie" width="250" height="250" class="indent">
Стоит знать, что я пробовал в html и django-view, отвечающих за данную страничку, встроенные возможности Django-Кеширования, когда плохо в нем разберался. Тогда и возникла эта проблема, однако когда код кеширования я убрал, проблема осталось. В т.ч. пробовал пересобирать venv, но это не помогало.
Проблема решается только путем перезахода в браузер (перезагрузки).
Есть-ли у кого либо идеи, как подобную ерунду разрешить? Буду крайне благодарен за помощь.