簡體   English   中英

如何在 Django 中顯示子類別產品?

[英]How to Display SubCategory Products in Django?

我有類別、子類別和子子類別之間的關系,並且productsub child category相關,但我想顯示subcategory產品的列表。 請讓我知道我該怎么做。

這是我的models.py文件...

class Category(models.Model):
    cat_name=models.CharField(max_length=225)
    cat_slug=models.SlugField(max_length=225, unique=True)

class SubCategory(models.Model):
    subcat_name=models.CharField(max_length=225)
    subcat_slug=models.SlugField(max_length=225, unique=True)
    category = models.ForeignKey('Category', related_name='subcategoryies', on_delete=models.CASCADE, blank=True, null=True)


class SubChildCategory(models.Model):
    subcategory=models.ForeignKey(SubCategory, related_name='SubChildRelated', on_delete=models.CASCADE, default=None, verbose_name='Sub Category')
    name=models.CharField(max_length=50, default=None)
    slug=models.SlugField(unique=True, max_length=50)

這是我的product models.py文件...

class Product(models.Model):
    name=models.CharField(max_length=225)
    slug=models.SlugField(max_length=225, unique=True)
    subcategory=models.ManyToManyField(SubChildCategory, related_name='pro_subchild', verbose_name='Select Category')

這是我的views.py文件,我試圖在其中顯示SubCategory產品...

def home(request):
    subcat_product = Product.objects.prefetch_related('subcategory')
    return render(request, 'frontend/index.html',{'subcat_product':subcat_product}

但上述功能顯示了所有這在可用的產品SubChildCategory ,我想展示產品根據SubCategory在我的主頁。

請讓我知道展示這些產品的過程是什么。

我認為它應該有效:

# You can also get your sub category by id
sub_child_categories = SubCategory.objects.get(
    slug=your_sub_category_slug
).SubChildRelated.all()

subcat_products = Product.object.none()

for sub_child_category in sub_child_categories:
    subcat_products |= sub_child_category.pro_subchild.all()

subcat_productsSubCategory subcat_products擁有的所有產品。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM