diff --git a/.gitignore b/.gitignore index 2a7a19b2327ad5052b12d84c9bc9c80ea797ab5c..136a616cd3d66689897d654d52bdf67635075638 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ __pycache__ db.sqlite3 static +staticfiles media core/migrations/*.py diff --git a/ece651_backend/settings.py b/ece651_backend/settings.py index 580020ef3ecb15deb49298b4c6969ad9e787a689..491094dc74fc8db5bff975de75c203c35af866bc 100644 --- a/ece651_backend/settings.py +++ b/ece651_backend/settings.py @@ -60,6 +60,7 @@ REST_KNOX = { MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', + 'whitenoise.middleware.WhiteNoiseMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', @@ -136,14 +137,14 @@ USE_TZ = True # https://docs.djangoproject.com/en/4.1/howto/static-files/ STATIC_URL = 'static/' -STATIC_ROOT = os.path.join(BASE_DIR, "static/") - -STATICFILES_DIRS = ( - ("js", os.path.join(STATIC_ROOT, 'js')), - ("css", os.path.join(STATIC_ROOT, 'css')), - ("images", os.path.join(STATIC_ROOT, 'images')), - ("fonts", os.path.join(STATIC_ROOT, 'fonts')), -) +if DEBUG: + STATICFILES_DIRS = ( + os.path.join(BASE_DIR, "static"), + ) +else: + # STATIC_ROOT = os.path.join(BASE_DIR, "static") + STATIC_ROOT = BASE_DIR / "staticfiles" +STATICFILES_STORAGE = "whitenoise.storage.CompressedManifestStaticFilesStorage" # Default primary key field type # https://docs.djangoproject.com/en/4.1/ref/settings/#default-auto-field @@ -160,4 +161,4 @@ EMAIL_HOST_PASSWORD = 'psqytbyafqujeiji' # Media Settings MEDIA_URL = 'media/' -MEDIA_ROOT = os.path.join(BASE_DIR, 'media/') +MEDIA_ROOT = os.path.join(BASE_DIR, 'media') diff --git a/ece651_backend/urls.py b/ece651_backend/urls.py index 259b68dc7735d8203cbdda25b4ddc2c5d1d596cb..51e27e6c91fd85c0165a6cb05f09303724e87ee5 100644 --- a/ece651_backend/urls.py +++ b/ece651_backend/urls.py @@ -2,6 +2,7 @@ from django.conf import settings from django.conf.urls.static import static from django.contrib import admin from django.urls import path, include +from django.views.static import serve from rest_framework import routers from rest_framework.documentation import include_docs_urls @@ -9,11 +10,11 @@ router = routers.DefaultRouter() urlpatterns = router.urls +# urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) +urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + urlpatterns += [ path('', include('core.urls')), path('admin/', admin.site.urls), path('docs/', include_docs_urls(title='ECE651 Backend API Document', description='This API document includes all ednpoints that has been implemented.')), ] - -urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) -urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)