I have 3 models Material, UOM, BIN_UOM
@with_author
class Material(models.Model):
version = IntegerVersionField( )
code = models.CharField(max_length=30)
name = models.CharField(max_length=30)
slug = models.SlugField(max_length=80, blank=True)
description = models.TextField(null=True, blank=True)
materialuom = models.CharField(max_length=1,
choices=UOM_CHOICES)
creation_time = models.DateTimeField(auto_now_add=True, blank=True)
itemgroup = models.ForeignKey(ItemGroup, on_delete=models.PROTECT)
keywords = models.CharField(max_length=50,null=True, blank=True)
valid_from = models.DateTimeField(null=True, blank=True)
valid_to = models.DateTimeField(null=True, blank=True)
min_quantity = models.DecimalField(max_digits=19, decimal_places=10)
trigger_quantity = models.DecimalField(max_digits=19, decimal_places=10)
max_quantity = models.DecimalField(max_digits=19, decimal_places=10)
@with_author
class UOM(models.Model):
version = IntegerVersionField( )
code = models.CharField(max_length=30)
name = models.CharField(max_length=30)
material = models.ForeignKey(Material)
description = models.TextField(null=True, blank=True)
@with_author
class UOM_BINUOM(models.Model):
version = IntegerVersionField( )
UOM = models.ForeignKey(UOM)
BIN_UOM = models.ForeignKey(BIN_UOM)
quantityperunit = models.PositiveSmallIntegerField()
creation_time = models.DateTimeField(auto_now_add=True,blank=True)
On the input I have my material ID
Using django ORM I want to get all the objects of UOM_BINUOM of my material id.
In SQL :
Select * from UOM_BINUOM where UOM_BINUOM.uom in (Select uom from UOM where UOM.material = material)
In ORM I am trying to it like this:
uombinuom = UOM.objects.filter(material__in=material_id).uom_binuom_set.all().order_by('-id')
or like this
material = get_object_or_404(Material, pk=material_id)
uom = material.uom_set.all().order_by('-id')
uombinuom = uom.uom_binuom_set.all().order_by('-id')
but getting error
'QuerySet' object has no attribute 'uom_binuom_set'
What I am doing wrong and how can I solve this issue?
material_ida list of ids, or a single id?