Я пытаюсь использовать приложение, оно создано с помощью Django с использованием Vue. js приложений, таких как шаблоны. У меня есть приложение Vue в папке внутри Django Project, имя - Frontend. Я связываю файлы stati c с dist / stati c внутри приложения Frontend Vue.
На локальном хосте он работает правильно, с этой конфигурацией в settings.py:
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'frontend/dist/static/')
]
MEDIA_ROOT = os.path.join(BASE_DIR,'MEDIA')
MEDIA_URL = '/media/'
TEMPLATES = [
...
'DIRS': [os.path.join(BASE_DIR, 'frontend/dist')],
...
]
Но мой сервер заставляет меня использовать эту конфигурацию, и ничего не работает.
STATIC_URL = '/'
STATIC_ROOT= '/home/usuario_cpanel/python/miapp/public/'
Когда я открываю свой домен в браузере, он отвечает на белой странице с этой ошибкой в консоли:
Uncaught SyntaxError: Unexpected token '<' ---- vendor.109784b9586c18ebcb5e.js:1
Uncaught SyntaxError: Unexpected token '<'----- app.69d321f0d34cdfbb9e42.js:1
My urls.py
urlpatterns = [...]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += [
url(r'^.*$', include(('articles.urls', 'articles'), namespace='articles')),
]
И мой config / index. js
build: {
env: require('./prod.env'),
index: path.resolve(__dirname, '../dist/index.html'),
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: 'static',
assetsPublicPath: '/',
productionSourceMap: true,
useEslint: false,
productionGzip: false,
productionGzipExtensions: ['js', 'css'],
bundleAnalyzerReport: process.env.npm_config_report
},
Я не уверен, верна ли эта конфигурация, но я протестировал некоторые возможности, и ничего не работает.