还是新的Python和Django的以后,虽然学习;-)Django的 - 重新显示的形式回传,但作为绑定
我有一个意在显示与联系人信息的表单视图。在成功处理表单并保存/创建对象后,我想再次显示相同的视图(添加另一个联系人),但添加了一条消息,说明以前的联系人信息已成功保存。
从Django return redirect() with parameters我了解到,重定向到具有传递参数的视图的方式是简单地再次调用视图并显示响应。
我的看法开始如下:
def addabentry(request, entrytype, messages=[]):
""" Presents form to create a company listing, then enters company into database"""
回传后,成功地保存数据,我再打电话的观点如下:
messages = ["%s %s has been added." % (entrytype, entry.name)]
response = addabentry(request, entrytype=entrytype, messages=messages)
return HttpResponse(response)
然而,在第二旋转木马形式似乎被绑定到以前的数据,大概是因为POST参数仍然在我传递给视图的请求对象中。
有没有办法让表单第二次解除绑定?或者,更可能的是,有没有更好的方式去做我想要的?我是否需要使用提到的SO问题中提到的request.sessions?
感谢您的帮助!
W.
烨,也可能有些forsmets以允许多个接触形式来动态加载的页面上(使用javascript也许):https://docs.djangoproject.com/ en/dev/topics/forms/formsets/ –
谢谢!还会查看消息/会话 – Westerley
调查了更多的消息框架后,它确实似乎是一个更好的解决方案。相应地改变了接受的答案。谢谢! – Westerley