在django中为404错误页面创建自定义视图

时间:2017-04-13 12:20:17

标签: django django-templates django-views

在我的项目中,我想为404页面创建自定义视图

setting.py

DEBUG = False


ALLOWED_HOSTS = ['*']

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
MEDIA_URL = "/media/"
MEDIA_ROOT = os.path.join(os.path.join(BASE_DIR), "media_cdn")ode here

Urls.py

if settings.DEBUG:
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)  
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

handler404 = 'myapp.views.handler404'
handler500 = 'myapp.views.handler500'

当我在settings.py文件中生成DEBUG = False时,静态文件无法正确加载。截图附件相同。

static files not loading

请帮我解决这个问题。

2 个答案:

答案 0 :(得分:2)

如果DEBUG = Falsestatic()将返回空列表。所以你必须使用任何web服务器(apache,nginx等)来提供静态文件。看看

https://docs.djangoproject.com/en/1.10/howto/static-files/deployment/

答案 1 :(得分:2)

当您设置DEBUG = False时,您的django开发runserverstop serving static files。您必须设置slightly different way to serve static files。请记住删除那些用于制作的模式。在生产设置中,静态文件应由Web服务器(如Apache或Nginx)提供。