29 lines
923 B
Python
29 lines
923 B
Python
from django.db import models
|
|
from django.utils import timezone
|
|
|
|
import mongoengine as me
|
|
|
|
|
|
class Element(me.EmbeddedDocument):
|
|
element_id = me.IntField()
|
|
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)
|
|
|