我有一个Django项目,工作的urls.py看起来像:

urlpatterns = [
    path('', views.index, name='index'),
    path('polls/search', views.search, name='search'),

]


然后我想在urls.py中为图像添加其他路径

urlpatterns += patterns('django.views.static',(r'^media/(?P<path>.*)','serve',{'document_root':settings.MEDIA_ROOT}), )


但是我得到了:

 unresolved reference 'patterns'


我正在使用python 3.4和Django 2.0.8。如何将其他路径正确添加到我的原始urls.py中?谢谢!

最佳答案

看来使用patterns将不再起作用。由于您尝试提供静态文件,请尝试以下操作:

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    # ... the rest of your URLconf goes here ...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)


并在settings.py中设置MEDIA_URL和MEDIA_ROOT。

为了使其在您的模板中正常工作,您需要执行以下操作:

{% load static %}
<body data-media-url="{% get_media_prefix %}">


Django docs

关于python - Django urlpatterns设置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51975139/

10-16 22:47