我有一个url,它接受任何字符串作为参数。当我重定向到这个url时,我想在视图内传递一个参数。你怎么在Django做到这一点?
我的网址定义如下:
url(r'^user_view/(?P<service_name>.+)$', views.user_view, name='user_view'),
我的相关视图代码(不正确)如下所示:
service = RestaurantService.objects.get(pk=5)
return HttpResponseRedirect('/services/user_view/%s'%service.service_name)
答案 0 :(得分:2)
如果您使用redirect()
快捷方式,它会自动反向解析所提供视图名称的URL并传递参数:
from django.shortcuts import redirect
def my_view(request):
service = RestaurantService.objects.get(pk=5)
return redirect('user_view', service_name=service.service_name)