from django.db import models from django.utils import timezone import mongoengine as me class Element(me.EmbeddedDocument): element_id = me.StringField() element_type = me.StringField() content = me.StringField() css = me.DictField() class Page(me.EmbeddedDocument): cut = me.IntField() elements = me.ListField(me.EmbeddedDocumentField(Element)) class Code(me.Document): pages = me.ListField(me.EmbeddedDocumentField(Page)) keyword = me.ListField(me.StringField(max_length=50), default=list) description = me.StringField(default='', blank=True) object_type = me.StringField(choices=("portfolio", "project")) object_id = me.StringField() created_at = me.DateTimeField(default=timezone.now) updated_at = me.DateTimeField(default=timezone.now) def save(self, *args, **kwargs): self.updated_at = timezone.now() return super().save(*args, **kwargs)