如何解决django表单验证失败后返回什么?
| django表单验证失败后如何返回页面? 这就是我目前所拥有的,在我的表单对象和我需要传递回的所有其他对象失败之后,我返回了render_to_response。但是浏览器中的url具有表单操作的值,因此似乎对我来说,好像我做错了什么。我希望能以某种方式返回对象以及HttpResponseRedirect,但查看不可能的文档。def addReview(request,reviewId):
review = AdminReview.objects.get(id=int(reviewId))
if request.method == \'POST\':
form = UserReviewForm(request.POST)
if form.is_valid():
cd = form.cleaned_data
ur = UserReview(adminReview=review,review=cd[\'review\'],rating=int(cd[\'rating\']))
ur.save()
return HttpResponseRedirect(reverse(\'filmflux.reviews.views.review\',kwargs={\'reviewId\':review.id,\'filmSlug\':review.filmSlug}))
userReviews = review.userreview_set.all()
return render_to_response(\'review.html\',{\'review\':review,\'form\': form,\'userReviews\': userReviews },context_instance=RequestContext(request))
解决方法
会话对此很有用,或者,如果您使用AJAX,则可以验证表单,然后返回对象或某种错误消息,或者在失败后返回所需的内容。一个或另一个可能是最好的。您还可以将POST请求中的参数以及GET查询参数一起传递给重定向视图,或将参数传递给重定向视图:
from django.shortcuts import redirect
return redirect(\'some-view-name\',reviewID=id)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。