版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37049781/article/details/84975283
Django中对静态文件的存储主要在media与static两个目录下,media放用户与应用相关的文件,static放js等与程序相关与用户没有直接关联的文件。
在setting中配置的文件相关常见变量
- STATIC_ROOT static文件目录地址路径,在执行collectstatic时静态文件统一收集到此路径下
- STATIC_URL static文件网络路径
- STATICFILES_DIRS 公共静态文件目录
- STATICFILES_STORAGE
- STATICFILES_FINDERS
- MEDIA_ROOT MEDIA文件目录地址路径
- MEDIA_URL MEDIA文件目录网络路径
使用静态文件
- 在自定义的staticfiles_dirs中寻找静态文件
- 保证 django.contrib.staticfiles 在 INSTALLED_APPS 中.
- 在 TEMPLATES 配置中添加 django.template.context_processors.static
- 在模板中使用 STATIC_URL 变量,eg:<img src="{{STATIC_URL}}girl.png>
- 在自定义static_root中寻找
if settings.DEBUG:
urlpatterns += [
url(r'^static/(?P<path>.*)$', views.serve),
]
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
方式一只在开发环境下有用
404 500 页面配置
setting文件配置templates dir路径
template目录下设计对应错误页面
views文件编写相应view函数
def page_not_found(request):
return render_to_response('user/404.html', status=404)
def page_error(request):
return render_to_response('user/500.html', status=500)
urls中为404 500句柄指定处理函数
handler404 = page_not_found
handler500 = page_error