Я работал с Django / Vue, и вот что я делаю:
- Создание проекта Django
- Инициализация папки проекта как нового проекта Vue с использованием vue-cli
Отсюда я могу запустить два сервера разработки, один для Django, а другой для Vue:
python manage.py runserver
В другом терминале:
npm run serve
Чтобы использовать мой API в Vue, я использую эту конфигурацию в vue.config.js
:
module.exports = {
baseUrl: process.env.NODE_ENV === 'production'
? '/static/'
: '/',
outputDir: '<PROJECT_BASE_DIR>/static',
indexPath: '../templates/index.html',
filenameHashing: false,
devServer: {
proxy: {
'/api': {
target: 'http://localhost:8000'
}
}
},
}
devServer
перенаправляет запросы к API, outputDir
и indexPath
помогают создать приложение дляпапка проекта, <PROJECT_BASE_DIR>/templates/
и <PROJECT_BASE_DIR>/static/
Следующим шагом будет создание TemplateView
и установка template_name
на index.html
(файл, созданный Vue), с этим у вас естьSPA в представлении / шаблоне Django.
При таком подходе вы можете использовать Docker-контейнер для Django.
Я надеюсь, что это даст вам некоторые основные рекомендации для продолжения.
Alejandro