I am using the Django REST framework with Mongoengine. When I try to serialize an optional field in an embedded document, the environment still requires a field and returns an error message that the field cannot be empty. How to make fields optional for EmbeddedDocument? It works great for standard Document model objects, not for EmbeddedDocument objects.
My model:
class Event(EmbeddedDocument):
id = ObjectIdField(required=True, default=ObjectId())
status = StringField(required=True, max_length=50)
note = StringField(required=False, max_length=2000)
created = DateTimeField(required=True, default=timezone.now())
My serializer:
class EventSerializer(EmbeddedDocumentSerializer):
class Meta:
model = Event
depth = 2
def validate(self, data):
return data
Note that the "note" field is set to required=False. However, when I serialize the document, I still get the error message that the field cannot be empty. Thank!
source
share