Django静态文件的路径设置

两种方法,一种是常规的使用 {% static %} 的方法,这个不再赘述了,相信很多书里都是这么讲的;另一种方法是不使用{% static %}标记,而直接实现诸如在HTML文件中像 标记的CSS或JavaScript路径寻址。

第二种方法,在对老代码的迁移比较有用,因为不需要需改原来老的前端脚本。其在Django2.1的解决方法是设置urlpatterns,具体为

假设my_dir是静态文件的根目录,其位于project/appname/my_dir的位置;my_dir下面可以放置css、scripts等子目录。只需设置项目的urls.py文件即可:

from django.contrib import admin
from django.conf.urls import url
from django.views.static import serve
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^(?P.*)$', serve, {'document_root': 'appname/my_dir'}),
]

这样浏览器在访问 http://127.0.0.1:8000/css/default.css 时,就会寻找目标文件 project/appname/my_dir/css/default.css

你可能感兴趣的:(Django静态文件的路径设置)