使用django 1.11的模式更新受保护的服务URL路径

问题描述 投票:0回答:1

你如何在当前(1.11)版本的Django中使用此代码?下面的代码使用模式模块但是当我用Google搜索时它在1.10中删除了。

from django.conf.urls import patterns, include, url
from django.contrib.auth.decorators import login_required
from django.views.static import serve
from django.conf import settings


@login_required
def protected_serve(request, path, document_root=None, show_indexes=False):
    return serve(request, path, document_root, show_indexes)

urlpatterns = patterns('',
    url(r'^%s(?P<path>.*)$' % settings.MEDIA_URL[1:], protected_serve, {'document_root': settings.MEDIA_ROOT}),
)

这是源代码教程link

python django django-urls
1个回答
0
投票

在Django 1.8+中,urlpatterns应该是一个列表(release notes)。同时删除patterns导入。

from django.conf.urls import include, url

urlpatterns = [
    url(r'^%s(?P<path>.*)$' % settings.MEDIA_URL[1:], protected_serve, {'document_root': settings.MEDIA_ROOT}),
]
© www.soinside.com 2019 - 2024. All rights reserved.