1234567891011121314151617181920212223242526272829303132333435363738394041 |
- from django.db import models
- from django.contrib.auth.models import User
- from django.utils import timezone
- from article.models import ArticlePost
- from ckeditor.fields import RichTextField
- from mptt.models import MPTTModel, TreeForeignKey
- class Comment(MPTTModel):
- user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='comment')
- article = models.ForeignKey(ArticlePost, on_delete=models.CASCADE, related_name='comment')
- body = RichTextField()
- created = models.DateTimeField(default=timezone.now) # 使用timezone.now()时 进行数据迁移会,有警告
- updated = models.DateTimeField(default=timezone.now)
- total_views = models.PositiveIntegerField(default=0)
- # mptt树形结构
- parent = TreeForeignKey(
- 'self',
- on_delete=models.CASCADE,
- null=True,
- blank=True,
- related_name='children'
- )
- # 记录二级评论回复给谁,str
- reply_to = models.ForeignKey(
- User,
- null=True,
- blank=True,
- on_delete=models.CASCADE,
- related_name='replyers'
- )
- # class Meta:
- # ordering = ('-created',)
- class MPTTMeta:
- order_insertion_by = ['created']
- def __str__(self):
- return self.body[:20]
|