我希望SOMETHING不是强制性的,所以基本上我希望www.site.com/endpoint
自动重定向到www.site.com/something/endpoint
。我有办法在一条线上做到吗?
现在我正在做:
url(r'^SOMETHING/endpoint$', 'endpoint', name='endpoint'),
url(r'^endpoint$', RedirectView.as_view(url='SOMETHING/endpoint')),
干杯。
答案 0 :(得分:1)
我相信你要求让任何以“端点”结尾的网址重定向。
要完成此更改,请将您的重定向网址正则表达式更改为r"endpoint$"
。正则表达式中的插入符操作符基本上是从字符串的开头说的。
此正则表达式将匹配以“端点”结尾的任何URL,例如。 foo/endpoint
,bar/endpoint
答案 1 :(得分:1)
为什么要在一条线上执行此操作?您谈论的是两个不同的URL,它们执行两个不同的操作 - 一个是执行HTTP重定向,另一个是渲染视图。两条线是正确的方法。
编写更广泛的正则表达式以覆盖这两个URL将允许您对两者使用相同的视图,但不会导致重定向(即,它不会将URL更改为SOMETHING/endpoint
)。