return super(AccessableManager, self).get_queryset().filter(available=True)
class Category(MPTTModel, CreationModificationDateMixin, MetaTagsMixin):
parent = TreeForeignKey(
'self',
null=True,
blank=True,
verbose_name='Родительская категория',
related_name='children'
)
name = models.CharField(
'Название',
max_length=100
)
slug = models.SlugField(
'Название в URL',
max_length=100,
)
available = models.BooleanField(
'Отображать на сайте?',
default=True
)
image = models.ImageField(
'Загрузить изображение',
upload_to=RandomFileName('images/categories'),
blank=True
)
description = models.TextField(
'Описание',
blank=True,
null=True
)
position = models.PositiveIntegerField(
'Позиция при выводе',
default=0
)
# Manager
accessable = AccessableManager()
class Meta:
verbose_name = 'Категория'
verbose_name_plural = 'Категории'
class MPTTMeta:
order_insertion_by = ['position', 'name']
def __str__(self):
return "{}".format(self.name)
def get_absolute_url(self):
return reverse('category:category', kwargs={'slug': self.slug, 'id': self.id})
return "{}".format(self.name) == return self.name
Обсуждают сегодня