根据Django topic从一个视图重定向到另一个视图时,我遇到了一个小问题。
已经阅读了一些答案,例如:ans_1,ans_2,ans_3,但找不到解决方法。
相反,出现错误:
Reverse for 'add_tasks_continue' not found. 'add_tasks_continue' is not a valid view function or pattern name.
目标:使用一些数据从一个视图重定向到另一个视图。
我的视图功能:
def add_day_tasks(request):
users = User.objects.all()
if request.method == "POST":
...
return redirect('add_tasks_continue', data=locals())
def add_tasks_continue(request, data):
...
return render(request, 'eventscalendar/add_task_continue.html', locals())
我的网址:
app_name = 'calendar'
urlpatterns = [
url(r'^$', calendar),
url(r'^calendar/add_day_task/$', add_day_tasks),
url(r'^calendar/add_task_continue/$', add_tasks_continue, name='add_tasks_continue'),
]
谢谢大家的时间
答案 0 :(得分:0)
由于add_tasks_continue(request, data)
具有参数“ data”,因此您的网址中应包含(?P<data>…)
。这就是我想说的。
它可能是
url(r'^calendar/add_task_continue/(?P<data>[a-z]+)$', add_tasks_continue, name='add_tasks_continue')
要不然
url(r'^calendar/add_task_continue/(?P<data>\d+)$', add_tasks_continue, name='add_tasks_continue')
。
但是,请记住,URL是字符串,因此“数据”应该是出现在URL中的字符串。