chore: serve built frontend from backend

This commit is contained in:
caoqianming 2026-03-10 16:56:06 +08:00
parent 1440767c69
commit fc460d80a6
2 changed files with 14 additions and 2 deletions

View File

@ -55,7 +55,7 @@ ROOT_URLCONF = 'config.urls'
TEMPLATES = [ TEMPLATES = [
{ {
'BACKEND': 'django.template.backends.django.DjangoTemplates', 'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [], 'DIRS': [os.path.join(BASE_DIR, 'dist')],
'APP_DIRS': True, 'APP_DIRS': True,
'OPTIONS': { 'OPTIONS': {
'context_processors': [ 'context_processors': [
@ -118,6 +118,9 @@ USE_TZ = True
STATIC_URL = 'static/' STATIC_URL = 'static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static') STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'dist', 'assets'),
]
# Media files # Media files
MEDIA_URL = 'media/' MEDIA_URL = 'media/'

View File

@ -2,9 +2,10 @@
URL configuration for new_materials_db project. URL configuration for new_materials_db project.
""" """
from django.contrib import admin from django.contrib import admin
from django.urls import path, include from django.urls import path, include, re_path
from django.conf import settings from django.conf import settings
from django.conf.urls.static import static from django.conf.urls.static import static
from django.views.generic import TemplateView
urlpatterns = [ urlpatterns = [
path('admin/', admin.site.urls), path('admin/', admin.site.urls),
@ -18,3 +19,11 @@ urlpatterns = [
# 开发环境下提供媒体文件服务 # 开发环境下提供媒体文件服务
if settings.DEBUG: if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static('/assets/', document_root=settings.BASE_DIR / 'dist' / 'assets')
# 前端单页应用入口
urlpatterns += [
re_path(r'^(?!api/|admin/|media/).*$',
TemplateView.as_view(template_name='index.html'),
name='frontend-index'),
]