Django static

Vlg

Green Team
02.11.2019
117
1
Hello, world!
У меня вопрос уровня новичка. Дело такое:
Решил на django 3.2.12 написать маленький website. Создал проект, приложение и html. В настройках settings.py указал все необходимые данные, включая выгрузку с папки static. В саму папку static поставил картинку.
Если запускать все локально (127.0.0.1), все работает как "Кока-Кола", но если выгрузить в сеть, то сервер не находит картинку. Я долго мучился и только потом вспомнил про функцию collectstatic. И картинка высветилась.
Вопрос следующий:
Это что получается, что при каждом пользователе выложивший свое изображение на website'e я буду обязан выполнять collectstatic??? Можно обойтись без этого?
Выгрузка изображения происходит не в models.py, а самым обычным способом:
HTML:
<!DOCTYPE HTML>
<HTML LANG="en">
{% load static %}
<Head>
</head>

<body>
<img src='{% static "fdog.jpg" %}'>
</body>
 
Решение
Вам на форум питонистов.
Тут другая тематика.
Я тут посидел и подумал. Понял, что я написал глупость. Когда пользователь выкладывает изображение оно не "вшивается" в шаблон, а содержится где-то и выгружается с помощью models. Логично. Также можно через js.
Ок, перезадам вопрос:
Для чего нужно collectstatic и почему локально изображения выкладываются без него, а на сервере он необходим? И можно ли обойтись без него?
 
Последнее редактирование:
Вам на форум питонистов.
Тут другая тематика.
 
Решение
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →

Популярный контент

🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab