简体   繁体   English

使用Django 1.11的模式更新受保护的服务网址路径

[英]Updating protected serve url path with patterns for django 1.11

How do you use this code in the current (1.11) version of Django? 您如何在当前(1.11)版本的Django中使用此代码? The code below uses patterns module but as I googled it was removed in 1.10. 下面的代码使用模式模块,但正如我在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}),
)

Here's the source tutorial link 这是源教程链接

In Django 1.8+, urlpatterns should be a list ( release notes ). 在Django 1.8+中,urlpatterns应该是一个列表( 发行说明 )。 Remove the patterns import as well. 还要删除导入的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}),
]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM