如何在django中序列化字典以在Jquery中呈现[问题级别-初学者]

如何在django中序列化字典以在Jquery中呈现[问题级别-初学者],jquery,ajax,django,json,serialization,Jquery,Ajax,Django,Json,Serialization,要序列化的词典- 格式错误 e、 g.观点- form = PersonalForm(request.POST) # errors = serializing function which serializes form.errors data = errors #Is this the way to pass data? Not quite sure.... return HttpResponse(data,mimetype="application/json") e、 g.javascr

要序列化的词典- 格式错误

e、 g.观点-

form = PersonalForm(request.POST)
# errors = serializing function which serializes form.errors
data = errors 
#Is this the way to pass data? Not quite sure....
return HttpResponse(data,mimetype="application/json")
e、 g.javascript(请求成功时)-


朋友们,现在我该怎么做呢?

您需要在两个地方查找错误

存在“非字段错误”:

和基于字段的错误,例如名称字段:

form.name.errors
根据表单的复杂性,您可以将错误作为json中的单个错误引用,或者制作一个将它们组合在一起的小型python脚本。我实际上并没有运行代码,但我认为这可能对您有用:

errors = []
errors = errors + form.non_field_errors

for field in form:
    errors = errors + field.errors

if len(errors) > 0 :
    data = json.dumps({"response_text": "Errors Detected", "errors" : errors})

这里不挑剔,但你真的验证了你的表格吗

form.is_valid()

您正在询问如何将字典转换为JSON对象,以便jQuery/javascript能够读取它。json.dumps允许这种情况发生。

那么我该如何改进我的问题?很难理解你在问什么?有什么问题?你期待什么?你看到了什么?嘿,我要删除这个问题。。。。如果你能帮忙的话,我已经在这里发布了一个更好的版本。它快把我逼疯了?我想你没有明白我的问题。。。错误本身的问题不在于其格式…@Sussagittikasusa-不,form.errors在调用is_valid()之前不会填充。作为一个“应该”的人,在提问之前搜索类似的问题,我认为在回答问题之前也应该搜索:)你的答案是这个问题的次优副本->所以你是说我不应该回答这个问题,因为另一个人回答了类似的问题?这对我来说毫无意义。
errors = []
errors = errors + form.non_field_errors

for field in form:
    errors = errors + field.errors

if len(errors) > 0 :
    data = json.dumps({"response_text": "Errors Detected", "errors" : errors})
form.is_valid()
import json

data = json.dumps(errors)

return HttpResponse(data,mimetype="application/json")