Как получить привязанные к ManyToMany filed элементы через _set ? Django
Раньше я хорошо это делал, но сейчас не могу вспомнить?.
models.py:
class Tovar(models.Model):
idtov = models.CharField("ID товара", max_length=30, default="default")
name = models.CharField("Название товара", max_length=400, default="default")
def __str__(self):
return self.name
class Meta:
verbose_name = "Товар"
verbose_name_plural = "Товары"
ordering = ('id',)
class Checks(models.Model):
iddoc = models.CharField("Id Чека", max_length=30)
tovars = models.ManyToManyField("Tovar", verbose_name="Товары в чеке", related_name="tovar")
createtime = models.DateTimeField("Дата", auto_now_add=True)
# count = ... Будем брать из Checks.objects.get(pk=pk).tovars
summa = models.FloatField()
def __str__(self):
return f"Id чека: {self.iddoc}"
class Meta:
verbose_name = "Чек"
verbose_name_plural = "Чеки"
ordering = ("createtime",'id')
Я хочу получить из объекта Checks все товары, привязанные к нему через related name.
Ответы (1 шт):
Автор решения: h g
→ Ссылка
Попробуй создать функцию в модели Checks(get_all_tovar, к примеру). Дальше легко:
return self.tovars.all()