#python-3.x #django #django-models #django-3.1
#python-3.x #джанго #django-модели #django-3.1
Вопрос:
Вот код моего файла моделей:
from django.db import models
# Create your models here.
class Category(models.Model):
name = models.CharField(max_length=255)
def __str__(self):
return self.name
class Product(models.Model):
category = models.ForeignKey(Category, on_delete=models.CASCADE, related_name='products')
name = models.CharField(max_length=255)
price = models.DecimalField(decimal_places=2, max_digits=9)
def __str__(self):
return self.name
class Label(models.Model):
name = models.CharField(max_length=255)
products = models.ManyToManyField(Product, related_name='labels')
def __str__(self):
return self.name
Теперь я хочу получить доступ к полю ManyToMany, то есть к метке из категории
, пожалуйста, помогите мне
Заранее спасибо
Ответ №1:
Вы можете попробовать так.
# first get the single category object
category = Category.objects.get(pk=1)
# querying products in this category
products = category.products.all()
# now filter the Label model based on the category products
labels = Label.objects.filter(products__in=products)