【发布时间】:2017-12-28 12:35:20
【问题描述】:
我从 ajax 和 ajax 函数中调用一个特定的 url 函数,该函数将调用各自的视图函数。在视图函数中,我想通过调用另一个视图来重定向页面(因为我无法在 ajax 请求后呈现)。
这是我的网址:
urlpatterns = [
url(r'^$', views.search, name='search'),
url(r'^search_result/.+$', views.search_result, name='search_result'),
url(r'^new_search_result/$',
views.new_search_result,
kwargs={'selected': '', 'keyword': ''},
name='new_search_result')
]
这是search_result 视图:
@csrf_exempt
def search_result(request):
keyword = request.POST.get('keyword')
selected = request.POST.get('selected')
url = reverse('new_search_result',
kwargs={'keyword': keyword,
'selected': selected})
return HttpResponseRedirect(url)
# return render(request, 'SearchEngine/search_result.html', {'all_results': result})
这是new_search_result 视图:
def new_search_result(request, selected={}, keyword=''):
# code blocks
但是在领事中我得到了这个错误:
django.urls.exceptions.NoReverseMatch: Reverse for 'new_search_result' with keyword arguments '{'selected': '{"PANTHER":"ftp.pantherdb.org","Pasteur Insitute":"ftp.pasteur.fr","Rat Genome Database":"ftp.rgd.mcw.edu"}', 'keyword': 'dfasdf'}' not found. 1 pattern(s) tried: ['searchengine/new_search_result/$']
[22/Jul/2017 12:52:12] "POST /searchengine/search_result/dfasdf HTTP/1.1" 500 16814
【问题讨论】:
标签: python ajax django django-urls