我已经用 django rest 框架设置了一个 REST api,使用 mongoengine 作为模型。但是,默认情况下,模型的所有字段都是必需的,但我想将某些字段设为可选。
我model.py
的是:
class ProjectFormula(EmbeddedDocument):
name = fields.StringField()
expression = fields.StringField()
class ProjectMeta(Document):
project_id = fields.IntField()
sheet_mapping = fields.DictField()
classificication_map = fields.DictField()
concept_map = fields.DictField()
formulas = fields.ListField(fields.EmbeddedDocumentField(ProjectFormula))
serializers.py
class ProjectMetaSerializer(mongoserializer.DocumentSerializer):
class Meta:
model = ProjectMeta
fields = '__all__'
response from Post api:
{
"sheet_mapping": [
"This field is required."
],
"classificication_map": [
"This field is required."
],
"concept_map": [
"This field is required."
]
}
我想让这个字段可选,只有 project_id 和 sheet_mapping 是强制性的。
我尝试classificication_map = fields.DictField(required=False)
了model.py
[来自其他一些研究],但没有奏效。
任何帮助将不胜感激。