Когда я показываю свой ноутбук, все в порядке. но теперь мой код выдает ошибку
Здравствуйте я на Django пишу блог и у меня возникает эта ошибка можете мне помочь? когда я переписываю свою модель с помощью calsdd base views я получаю эту ошибку
Это мое мнение:
class CategoryList(ListView):
paginate_by = 3
template_name = "blog/category_list.html"
def get_queryset(self):
global category
slug = self.kwargs.get("self")
category = Category.objects.active().filter(slug= slug)
return category.articles.published()
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context["category"] = category
return context
это моя модель и менеджер моделей:
class ArticleManager(models.Manager):
def published(self):
return self.filter(status= 'p')
class CategoryManager(models.Manager):
def active(self):
return self.filter(status= True)
class Category(models.Model):
parent = models.ForeignKey('self' , default=None , null=True , blank=True , on_delete= models.SET_NULL , related_name='children' , verbose_name="زیر دسته" )
title = models.CharField(max_length = 200 , verbose_name = "عنوان دسته بندی")
slug = models.SlugField(max_length = 100 , unique = True , verbose_name = "آدرس دسته بندی")
status = models.BooleanField(default = True , verbose_name = "آیا نمایش داده شود؟")
position = models.IntegerField(verbose_name = "پوزیشن")
objects = CategoryManager()
class Article(models.Model):
STATUS_CHOICES = (
('d' , 'پیش نویس'),
('p' , 'منتشر شده'),
)
title = models.CharField(max_length = 200 , verbose_name = "عنوان مقاله")
slug = models.SlugField(max_length = 100 , unique = True , verbose_name = "آدرس مقاله")
category = models.ManyToManyField(Category , verbose_name = "دسته بندی" , related_name="articles")
description = models.TextField(verbose_name = "محتوا")
thumbnail = models.ImageField(upload_to='images' , verbose_name = "تصویر مقاله")
publish = models.DateTimeField(default = timezone.now , verbose_name = "زمان انتشار")
created = models.DateTimeField(auto_now_add = True)
updated = models.DateTimeField(auto_now = True)
status = models.CharField(max_length = 1 , choices = STATUS_CHOICES , verbose_name = "وضعیت")
Я проверяю все, но это не помогает