我正在与Django和MongoDB一起使用Djongo,但是在尝试实现嵌入式字段时,我遇到了以下问题
ValueError: Value: [OrderedDict([('userID', 1), ('username', 'o'), ('admin', False)])] must be an instance of <class 'dict'>这些都是有关的模式:
from djongo import models
class groupMembership(models.Model):
membershipID = models.ObjectIdField()
userID = models.IntegerField()
username = models.CharField(max_length=50)
admin = models.BooleanField(default=False)
class group(models.Model):
groupID = models.ObjectIdField()
title = models.CharField(max_length=100)
createdDate = models.DateField()
members = models.EmbeddedField(model_container = groupMembership, null = True)下面是我使用的序列化器:
class groupMembershipSerializer(serializers.ModelSerializer):
class Meta:
model=groupMembership
fields=('membershipID', 'userID', 'username', 'admin')
class groupSerializer(serializers.ModelSerializer):
members = groupMembershipSerializer(many = True)
class Meta:
model=group
fields=('groupID','title','createdDate','members')当我试图发送以下POST请求时,会引发错误:
{
"title" : "l",
"createdDate" : "2021-07-07",
"members" :
[{
"userID" : "1",
"username": "o",
"admin" : "False"
}
]
}任何帮助都是非常感谢的!
发布于 2022-06-07 03:41:09
错误消息表明您试图使用list对象而不是dict发布,您能尝试:
{
"title" : "l",
"createdDate" : "2021-07-07",
"members" :
{
"userID" : "1",
"username": "o",
"admin" : "False"
}
}https://stackoverflow.com/questions/71896877
复制相似问题