Я разрабатываю проект Django (for Web API serving)
+ React (frontend purpose)
, в котором кодовая база для Django и React объединена в основной папке проекта, то есть оба находятся в одном репозитории git, как показано ниже:
.
+-- _backend
| +-- _config
| | +-- settings.py
| | +-- urls.py
| | +-- wsgi.py
| +-- _sample_app
| +-- _static
| +-- _media
| +-- manage.py
| +-- requirements.txt
+-- _frontend
| +-- _public
| +-- _src
| | +-- App.css
| | +-- App.js
| | +-- index.js
| +-- babel.rc
| +-- package-lock.json
| +-- package.json
| +-- webpack.config.js
Теперь я хотел бы реализовать рекомендуемый способ интеграции обеих технологий:
- Django as
standalone backend app
, который обслуживает только API (без пользовательского интерфейса, ресурсов, шаблонов) - Реагирует как
standalone SPA
, предназначенный для обслуживания внешнего интерфейса (пользовательский интерфейс, веб-страницы, ресурсы и т. д. c.)
Это означает, что Django будет запускаться на собственном порте, а React тоже сам по себе. Теперь во время разработки я мог:
- Реагировать на
localhost:3000
- Django на
localhost:3001
Однако я не очень уверен, как развернуть с помощью вышеуказанной настройки на производственном сервере. В этом проекте я буду использовать Nginx
.