Ответ 1
Я полагаю, что ваша страница пуста, потому что все "приложение" генерируется javascript (по-видимому, это выглядит как минимум на ваших двух скриншотах, предполагая, что содержимое <div id="app"></div>
не генерируется представлением django), но файл javascript недоступен для клиентов, которые отличаются от вашей машины разработки.
Трудно догадаться, почему это происходит без settings.py
, urls.py
и кода/шаблона view
, генерирующего вашу домашнюю страницу, но у нас есть некоторые кандидаты, которые могут генерировать эти проблемы: CORS, localhost "отравления" и, в конечном счете, STATIC_URL неправильной конфигурации.
- CORS: запрос считается междоменным, если любая из схем,
имя хоста или порт не совпадают. Вы запрашиваете файл как от
localhost:8000
(или192.168.1.102:8000
), так и отlocalhost:3000
. Поэтому проблемы с CORS будут возрастать, если вы запрашиваете файлы с внешнего устройства/ноутбука; -
localhost
- это та же машина как 192.168.1.102 на вашем "рабочем компьютере", но это не на второй ноутбук или любое другое устройство в вашей сети; - Вы создаете URL-адреса для файлов css и js с помощью тегов
{% url %}
или{% static %}
? Кажется, нет, но все же они выглядят динамически сгенерированными (т.е. Отсутствующая "общественная/" часть их URL-адреса). Я не знаю, как получить разные пути, используя vanilla Django и те же настройки, поэтому вы должны предоставить исходный код своего представления, по крайней мере, для получения точного ответа.
Решения (или, по крайней мере, подсказки:-)):
- Служите связку из того же порта (добавьте их в STATIC путь)
- Замените каждую ссылку
localhost
в ваших URL-адресах html (может потребоваться изменить вашуsites
- см. рамки сайтов) - Используйте стандартные теги/фильтры шаблонов и избегайте жестко закодированных URL-адресов в шаблонах и коде.
или установите https://github.com/owais/django-webpack-loader/ (pip install django-webpack-loader
) и следуйте их README или http://owaislone.org/blog/webpack-plus-reactjs-and-django/ руководство