I'm new to Django and I'm trying to access products that belong to category through Category model. I'm using a foreign key in Product for categories. These are my models: class Category(models.Model): name = models.CharField(max_length=140) slug = models.SlugField(blank=True) def __str__(self): return self.name def get_absolute_url(self): return reverse("shop:category", kwargs= {"category_slug": self.slug}) class Product(models.Model): category = models.ForeignKey(Category, on_delete=models.CASCADE) brand = models.ForeignKey(Brand, on_delete=models.CASCADE) title = models.CharField(max_length=200) slug = models.SlugField() description = models.TextField() image = models.ImageField(upload_to=image_name) price = models.PositiveIntegerField() avaliable = models.BooleanField(default=True) def get_absolute_url(self): return reverse("shoproduct", kwargs={ "product_slug": self.slug, "product_ctgr_slug": self.category.slug,}) My Views: class CategoryDetailView(DetailView): model = Category category_products = Category.product_set.all() slug_url_kwarg = "category_slug" def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context['categories'] = self.categories context['category_products'] = self.category_products return context But Django gives me an AttributeError: 'ReverseManyToOneDescriptor' object has no attribute 'all'. What am I doing wrong? Continue reading...