【发布时间】:2023-03-12 10:36:01
【问题描述】:
我已经为嵌入文档中的字段设置了默认值,但是当我尝试发布数据时,它不接受 None 或 Blank 值。
这是我的代码的样子-
models.py
class MetaData(EmbeddedDocument):
adcode = StringField(max_length=50, default="", blank=True, Null=True)
additional_html_below_header = StringField(max_length=50, default="")
adhoc_plus_disable_pacing = BooleanField(default=False)
adhoc_plus_has_priority = BooleanField(default=False)
adhoc_server = StringField(max_length=50, default="")
class LandingPage(Document):
type = StringField(max_length=50, default="")
meta_clean_URL_tag = StringField(max_length=50, default="")
meta_name = StringField(max_length=50, default="")
created_time = DateTimeField(default=datetime.datetime.now)
new = BooleanField(default=False)
meta_data = EmbeddedDocumentField(MetaData)
序列化器.py
class MetaDataSerializer(serializers.EmbeddedDocumentSerializer):
class Meta:
model = MetaData
class LandingPageSerializer(serializers.DocumentSerializer):
meta_data = MetaDataSerializer()
class Meta:
model = LandingPage
我在这里做错了什么吗?
【问题讨论】:
-
你使用的是哪个版本的mongoengine、DRF-mongoengine和DRF?
-
DRF 是 3.3.3 , mongoengine 是 0.10.6 并且 DRF-mongoengine 也是最新的。
-
你试过
allow_null=True吗? -
是的,我已经尝试过了(allow_null=True),但没有运气。以某种方式从 UI 管理这个问题。
标签: python django django-rest-framework mongoengine django-mongodb-engine