# coding=utf-8 from django.contrib.contenttypes.fields import GenericForeignKey from django.contrib.contenttypes.models import ContentType from django.db import models from django.conf import settings from storage.models import Storage class Comment(models.Model): closed = models.BooleanField(verbose_name='Закрыт', default=False, editable=False) user = models.ForeignKey(to=settings.AUTH_USER_MODEL, verbose_name=u'Автор', related_name='comment_owner') text = models.TextField(verbose_name='Текст', default='') files = models.ManyToManyField(Storage, verbose_name='Прикрепленые файлы', blank=True, editable=False) children = models.ManyToManyField(to='self', blank=True, symmetrical=False) content_type = models.ForeignKey(to=ContentType) object_id = models.PositiveIntegerField() content_object = GenericForeignKey('content_type', 'object_id') def __str__(self): return str(self.id) class Meta: verbose_name = 'Комментарий' verbose_name_plural = 'Комментарии'