将ModelForm数据转换为JSON字符串

2024-04-19 20:09:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个模型表单,在保存时需要将输入的数据构建成JSON字符串,作为有效负载发送给请求。你知道吗

我试过几种不同的方法,似乎都不管用。然而,当在终端中使用API时,我可以在手动输入JSON字符串时使其正常工作。你知道吗

{
    "factory_id":"XXXX-YYYYY",
    "name":"Dance Room",
    "latitude":XX.XXXXXX,
    "longitude":YY.YYYYYY,
    "config_id":abcd,
    "visibility": "private"
}

上面是必须发送的请求JSON,但是只需要工厂id、名称和可见性。你知道吗

class myForm(forms.ModelForm):
    class Meta:
        model = myModel
        fields = (
            'name',
            'factory_id',
            'latitude',
            'longitude',
            'visible',
            'config_id',
        )

我需要能够将该数据传递到API包装器的payload arg中,但是这样做只会从API中得到500个错误。你知道吗

构建JSON字符串的最佳方法是什么?你知道吗


Tags: 数据方法字符串name模型apiidconfig
1条回答
网友
1楼 · 发布于 2024-04-19 20:09:48

我自己解决了这个问题。这也许不是最漂亮的方法,但它确实奏效了。你知道吗

payload = {}
payload['factory_id'] = "XXXX-YYYYY"
payload['name'] = "Dance Room"
payload['latitude'] = XX.XXXXXX
payload['longitude'] = YY.YYYYYY
payload['config_id'] = abcd
payload['visibility'] = "private"

data = json.dumps(payload)

这就给了我一个完美的JSON字符串,可以发送给API包装器。你知道吗

相关问题 更多 >