Exemple #1
0
class Post(db.Document):
    ''' Post document; see fields below. '''
    title = db.StringField(max_length=120, required=True)
    slug = db.StringField()
    created_at = db.DateTimeField(default=datetime.datetime.now, required=True)
    author = db.ReferenceField(User_)
    published = db.BooleanField(default=False)
    tags = db.ListField(db.StringField(max_length=30))
    index_background = db.ReferenceField(Photo)
    category = db.ReferenceField(Category)
    content = db.StringField(required=True)
    mark_delete = db.BooleanField(default=False)

    def save(self, *args, **kwargs):
        self.slug = re.sub('[^\w]+', '-', self.title.lower())
        return super(Post, self).save(*args, **kwargs)

    meta = {
        'indexes': [{
            'fields': ['$title', '$content'],
            'weights': {
                'title': 10,
                'content': 2
            }
        }]
    }
Exemple #2
0
class Post(db.Document):
    title = db.StringField(max_length=150,required=True)
    date_posted = db.DateTimeField(default = datetime.utcnow())
    content = db.StringField()  
    image_file = db.StringField(max_length=50,required=True,default='post.jpg')
    author = db.ReferenceField(User,required=True)

    def __repr__(self):
        return f"Post('{self.title}','{self.date_posted}','{self.content}')"
class Comment(db.Document):
    meta = {"collection": "comments"}
    author = db.ReferenceField(User)
    post = db.ReferenceField(Post)
    content = db.StringField(required=True, max_length=255)
    date = db.DateTimeField(required=True, default=datetime.utcnow)
Exemple #4
0
class Comment(db.Document):
    post = db.ReferenceField(Post,required=True)
    author = db.ReferenceField(User,required=True)
    content = db.StringField(max_length=150,required=True)
    date_posted = db.DateTimeField(default = datetime.utcnow())