簡體   English   中英

Django模型反向查詢

[英]Django Model Reverse querying

我有4個模型,1)項目:描述項目的名稱和值。 我可以完全獨立注冊新項目。 2)訂單項基本上由一個項目和該特定項目的數量組成。 3)庫存:庫存是一堆LineItems。 4)幸存者只是擁有庫存的用戶。 我無法向后過濾庫存。 示例:我想獲取“ x”用戶庫存上的所有迭代。 幸存者是我的用戶。 對不起,我的英語不好。

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)

注意,您的庫存模型有點奇怪-尤其是survivor_inventory字段; 它指向一個Survivor對象,因此它可能應該被稱為survivor

暫無
暫無

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

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