当前位置: 首页 > 面试题库 >

直接从Django中的urls.py重定向到命名的url模式?

周辰沛
2023-03-14
问题内容

在Django中,如何直接从urls.py进行简单重定向?我自然是一个井井有条的人,赞成DRY原理,所以我想基于它的命名url模式获取目标,而不是对URL进行硬编码。


问题答案:

如果你使用的是Django 1.4或1.5,则可以执行以下操作:

from django.core.urlresolvers import reverse_lazy
from django.views.generic import RedirectView

urlpatterns = patterns('',
    url(r'^some-page/$', RedirectView.as_view(url=reverse_lazy('my_named_pattern'), permanent=False)),
    ...

如果你使用的是Django 1.6或更高版本,则可以执行以下操作:

from django.views.generic import RedirectView

urlpatterns = patterns('',
    url(r'^some-page/$', RedirectView.as_view(pattern_name='my_named_pattern', permanent=False)),
    ...

在Django 1.9中,默认值permanent已从True更改为False。因此,如果你未指定permanent关键字参数,则可能会看到以下警告:

RemovedInDjango19Warning:在Django 1.9中,“ RedirectView.permanent”的默认值将从True更改为False。设置一个明确的值可使此警告静音。



 类似资料:
  • 问题内容: 如何将与其他URL不匹配的流量重定向回首页? urls.py: 就目前而言,最后一个条目将所有“其他”流量发送到主页,但是我想通过HTTP 301或302进行重定向。 问题答案: 你可以尝试称为 RedirectView `from django.views.generic.base import RedirectView urlpatterns = patterns(‘’, url(

  • 我是Python和Flask的新手,我正在尝试做与如C#-ie:重定向到一个特定的URL-我该怎么做? 这是我的密码:

  • 本文向大家介绍django反向解析URL和URL命名空间的方法,包括了django反向解析URL和URL命名空间的方法的使用技巧和注意事项,需要的朋友参考一下 本文介绍了django反向解析URL和URL命名空间,分享给大家,具体如下: 首先明确几个概念: 1.在html页面上的内容特别是向用户展示的url地址,比如常见的超链接,图片链接等,最好能动态生成,而不要固定. 2.一个django项目中

  • 问题内容: 如何在angularjs中将用户重定向到绝对URL。 例如:我有一个页面,即我当前的网址(http://example.com/submit),一旦用户单击网页中的某个按钮,他就必须重定向到其他网页,例如(’ http: //google.com ‘)。 我尝试使用 但是没有任何效果。 注意: 不应从Web服务器进行重新部署。它是一个REST API。想要在客户端(使用angularj

  • 重定向到一个 URL 。 使用 window.location.href 或 window.location.replace() 重定向到 url 。 传递第二个参数来模拟链接点击(true - 默认值)或HTTP重定向(false)。 const redirect = (url, asLink = true) => asLink ? (window.location.href = url)

  • 问题内容: 我正在通过Java访问网页,如下所示: 但是在某些情况下,一个URL重定向到另一个URL。所以我想知道以前的URL重定向到的URL。 以下是我作为响应得到的标题字段: 因此,目前,我正在根据标头字段的值构造重定向的url 。在上述情况下,重定向的网址为 有什么标准方法可以确定特定的URL将要重定向到哪个URL。 我知道,当一个URL重定向到其他URL时,服务器会发送一个中间响应,该响应