【问题标题】:How to use foreign key to get related objects?如何使用外键获取相关对象?
【发布时间】:2015-08-16 18:30:31
【问题描述】:

我有一个person,它可能有很多images。 我想这样使用:person.image[x].image 来检索我的image 地址。如何使用 foreign key a person 与他们的 images 关联?并使用person 对象访问他们的images

class Person(models.Model):
    user = OneToOneField(User, on_delete=models.CASCADE)
    gender = CharField(max_length=1, choices=GenderChoices, blank=True, null=True)
    birth_date = DateField(blank=True, null=True)

    def __unicode__(self):
        return self.user.username

class Image(models.Model):
    person = ForeignKey(Person)
    itype = CharField(max_length=1, choices=ImageChoices)
    image = ImageField(upload_to=image_path, blank=True, null=True)
    created = DateTimeField(auto_now_add=True)

    def __unicode__(self):
        return self.image.path

【问题讨论】:

    标签: python django orm model


    【解决方案1】:

    person.image_set.all() 是一种方法,如果需要,您还可以过滤给定查询的人的图像,例如persom.image_set.filter(...),如果你只想计数,person.image_set.count()

    您可以在此处阅读有关如何查询相关对象的更多信息:https://docs.djangoproject.com/en/1.8/topics/db/queries/#related-objects

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-04
      • 2018-11-30
      • 2015-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-21
      相关资源
      最近更新 更多