【发布时间】:2021-04-15 03:35:49
【问题描述】:
我有一个这样的模型:
class Things(models.Model):
data = models.JSONField(default=dict)
data的结构是这样的:
{
"item" : "sugar",
"quantity" : "2",
"cost" : 220
}
请注意,data 不是必须包含所有 3 个键,它们都是可选的。
困难的部分是我不希望除这 3 个键之外的任何其他键出现在 data 字段中。
创建序列化程序有助于确保这 3 个字段的存在和格式,但不能确保其他字段不存在。我怎样才能在 django rest 框架中实现这个东西?
【问题讨论】:
-
你能告诉我一些预期的输入和输出示例吗?
-
您可以使用字段级验证器来验证传入的数据
-
在序列化程序中创建一个 validate_
函数。你可能会是 def validate_data(self, incoming_data)
标签: django django-rest-framework django-jsonfield