Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将never_cache应用于第三方Django应用程序';s的URL?_Python_Django - Fatal编程技术网

Python 如何将never_cache应用于第三方Django应用程序';s的URL?

Python 如何将never_cache应用于第三方Django应用程序';s的URL?,python,django,Python,Django,我正在尝试使用url.py中的@never\u cache装饰器。我想一个人可以用 url(r'^about/', never_cache(TemplateView.as_view(template_name="about_us.html"))), 但是很多时候我使用的是外部应用程序,我所做的就是url('',include(shop.url))一个例子是django oscar。现在,在这种情况下,我是否对其应用从不缓存?您可能会从以下方面找到这种方法的运气: 从django.conf.ur

我正在尝试使用
url.py
中的
@never\u cache
装饰器。我想一个人可以用

url(r'^about/', never_cache(TemplateView.as_view(template_name="about_us.html"))),

但是很多时候我使用的是外部应用程序,我所做的就是
url('',include(shop.url))
一个例子是
django oscar
。现在,在这种情况下,我是否对其应用从不缓存?

您可能会从以下方面找到这种方法的运气:

从django.conf.url.defaults导入url
从django.views.decorators.cache导入从不缓存
def never_缓存_模式(前缀,*args):
图案列表=[],图案,
对于args中的t:
如果isinstance(t,(列表,元组)):
t=url(前缀=prefix,*t)
elif isinstance(t,RegexURLPattern):
t、 添加前缀(前缀)
t、 \u callback=never\u缓存(t.callback)
模式列表追加(t)
返回模式列表
urlpatterns=从不缓存模式(“”,
(r'foo/$,'myview')
)
看起来没有更干净的方式

如果要将其应用于无法编辑的其他应用程序的一组URL,则可以尝试:

uncached_patterns = never_cache_patterns('',
   url(r'^$', include('shop.urls')),
   )

urlpatterns = patterns('',
    include(uncached_patterns),
    # other patterns
    # eg. url(r'^myapp/', include('myapp.urls', namespace="myapp")),
    # ...
)

以下内容适用于Django 1.11(继续使用
shop.url
)示例):

uncached_模式=[
url(urlpattern.regex.pattern,never_缓存(urlpattern.callback),name=urlpattern.name)用于shop.urls.urlpatterns中的urlpattern
]
URL模式+=[
url(“”,包括(未缓存的模式))
]

这实际上不起作用。尝试了从不缓存模式(“”,include('shop.url'))我已经更新了答案。老实说,我不能彻底测试它,所以如果它不起作用,我道歉。更新基于我对urlpattern设置的一般知识。