Как Django сохраняет свои статические файлы после запуска collectstati c? - PullRequest
0 голосов
/ 07 января 2020

Мне нужно немного пояснить, как Django обновляет свои файлы * stati c. Вот гипотеза, объясняющая мое затруднительное положение:

  • Я работаю над своим собственным сайтом, на котором требуется ссылка на PDF-файл, который хранится в виде файла * stati c.
  • Позже я заменил этот PDF-файл на слегка измененное имя и внес исправления в свой код соответственно.
  • Затем я запускаю команду collectstati c, чтобы заменить старые файлы stati c, и все работает как ожидается. Проводник показывает мне, что старые файлы были должным образом заменены в соответствующих папках.
  • Когда я go для проверки ссылки, я все еще перенаправлен на мой старый файл PDF. Старый статический файл, как будто ничего не было заменено.

Может кто-нибудь объяснить мне, как это произошло? Я просто обеспокоен и немного взволнован тем, что на мой старый файл stati c все еще ссылаются. Я имею в виду, что это может быть просто опечатка, или у меня на руках есть папка с привидениями stati c.

1 Ответ

0 голосов
/ 07 января 2020

При выполнении команды collectstatic Django ищет текущие данные c в STATICFILES_DIRS и копирует их в STATIC_ROOT путь.

Ссылка на файл, который возвращает Django - точно так, как это установлено в коде - Django не будет искать его в этом файле, чтобы показать ссылку.

Проверить или найти ваш код для старых имя файла, возможно, оно где-то оставлено.

Кроме того, файлы * stati c обычно представляют собой css, js, изображения - файлы, используемые при отображении страницы. Пользовательский контент, файлы данных (PDF-файл является одним из них) для загрузки по ссылке для скачивания - должен быть представлен как MEDIA FILES.

...