如何在foreingkey django上返回关系名称

bybem2ql  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(264)

如何从关系模型返回名称:

code:
Inactive = 0
Active = 1

state_choices = (
    (Inactive, 'Inactive'),
    (Active, 'Active')
)
class Tipe(models.Model):

    name = models.CharField(max_length=50)
    details = models.CharField(max_length=100)
    state = models.IntegerField(
        max_length=1,
        choices=state_choices,
        default=Active,
    )

class People(models.Model):

    name=models.CharField(max_length=100)
    phone=models.CharField(max_length=9, null=True)
    state = models.IntegerField(
        max_length=1,
        choices=state_choices,
        default=Active,
    )
    tipe = models.ForeignKey(Tipe, on_delete=models.CASCADE, null=True)

问题是在运行此操作时如何从模型tipe返回tipe.name:

People.objects.all().filter(state=1)

这个例子只返回foreingkey,而不是我的关系模型中的名称。也许有什么建议。。谢谢

zengzsys

zengzsys1#

试试这个:

p = People.objects.all().filter(state=1)

# p.tipe.name

names = [x.tipe.name for x in p]

相关问题