我希望在表单字段中接受json数据,而不是使用一些数据库操作来验证它。数据将主要由整数数组组成。那么,请您能帮我一下。
我试图用谷歌搜索,但没有得到任何体面的答案。请帮忙。
最佳答案
您需要使用CharField
将其作为文本输入。在此字段的干净方法中,您可以根据需要验证它,以检查输入是否有效。
就像是:
class myForm(forms.Form):
jsonfield = forms.CharField(max_length=1024)
def clean_jsonfield(self):
jdata = self.cleaned_data['jsonfield']
try:
json_data = json.loads(jdata) #loads string as json
#validate json_data
except:
raise forms.ValidationError("Invalid data in jsonfield")
#if json data not valid:
#raise forms.ValidationError("Invalid data in jsonfield")
return jdata
您可能还会发现一个用于JSON数据输入的自定义字段。
关于django - 带有JSON字段的Django表单,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14626702/