我想做的是如下
我有这样的网址/blog/1/sdc/?c=119
或/forum/83/ksnd/?c=100
我想要做的是将这些网址重定向到视图,以便我可以将网址更改为/blog/1/sdc/#c119
这样做的一种方法是在每个应用程序的视图中进行配置,其中可能生成这样的URL,但这不是可伸缩的。我想要做的是捕获最后有?c=<some_digit>
的任何网址并重定向到我的自定义视图。
任何人都可以帮忙,我对正则表达式并不擅长。
答案 0 :(得分:4)
您不能在urlconf中执行此操作,它与查询字符串中的任何内容都不匹配。您需要做的是编写一个中间件:
class RedirectMiddleware:
def process_request(self, request):
if 'c' in request.GET:
# return a HttpResponseRedirect here
有关详细信息,请参阅https://docs.djangoproject.com/en/dev/topics/http/middleware/。