[英]Django Model Reverse querying
I have 4 models, 1) Item: describes the name and the value of the item. 我有4个模型,1)项目:描述项目的名称和值。 I can register new items completely independently.
我可以完全独立注册新项目。 2)A Line Item consists basically in one Item and the quantity of that specific item.
2)订单项基本上由一个项目和该特定项目的数量组成。 3)Inventory: Inventory is a bunch LineItems.
3)库存:库存是一堆LineItems。 4) Survivor is just a user who owns the Inventory.
4)幸存者只是拥有库存的用户。 I not able to filter backwards the inventory.
我无法向后过滤库存。 Example: I want to get all the itens that the "x" user´s inventory has on it.
示例:我想获取“ x”用户库存上的所有迭代。 Survivor is my user.
幸存者是我的用户。 Sorry for my bad english.
对不起,我的英语不好。
class Itens(models.Model):
item_name = models.CharField(max_length=50)
points_value = models.FloatField(default=0)
def __str__(self):
return self.item_name
class LineItem(models.Model):
itemln = models.ForeignKey(Itens,on_delete=models.CASCADE,related_name='itens_contidos')
quantity = models.IntegerField(default=0)
inventory_ln = models.ForeignKey("Inventory",on_delete=models.CASCADE)
class Inventory(models.Model):
survivor_inventory = models.OneToOneField(Survivor,on_delete=models.CASCADE)
def __str__(self):
return self.survivor_inventory.name +' s inventory'
class Survivor(models.Model):
#id = models.AutoField(primary_key=True)
name = models.CharField(max_length=100)
age = models.PositiveIntegerField(default=0)
...
Iten.objects.filter(itens_contidos__inventory__survivor_inventory=my_survivor)
Note, your Inventory model is a bit strange - especially the survivor_inventory
field; 注意,您的库存模型有点奇怪-尤其是
survivor_inventory
字段; it points at a Survivor object, so it should probably just be called survivor
. 它指向一个Survivor对象,因此它可能应该被称为
survivor
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.