我试图从后端本身验证表单。我发出了dictionary
错误消息:
error_messages = {
'error': form.errors,
}
并将其传递给 HttpResponse :
return HttpResponse(json.dumps(error_messages))
我希望在表单无效时显示错误消息。
这是我的updaterow
观点:
def updaterow(request, id):
item = get_object_or_404(Studentapp, id=id)
if request.method == "POST":
form = EntryForm(request.POST, instance=item)
error_messages = {
'error': form.errors,
}
if form.is_valid():
post = form.save(commit=False)
post.save()
return HttpResponse(json.dumps(error_messages))
else:
form = EntryForm()
return HttpResponseRedirect(reverse('studentapp:index'), id)
return render(request, 'index.html',{'form':form})
我必须在else
部分进行更改也非常友好地帮助我。
答案 0 :(得分:1)
你的代码错误。如果表单有效,则没有错误消息。
if form.is_valid():
post = form.save(commit=False)
post.save()
return HttpResponseRedirect(reverse('studentapp:index'), id)
else:
form = EntryForm()
return HttpResponse(json.dumps(error_messages))
请注意,如果您要发出ajax请求,那么您的JavaScript必须检查重定向响应的状态代码并采取相应的操作。