查询值多字段外键列

时间:2015-01-15 16:06:09

标签: django django-models django-queryset

这是我的模特:

class Personel(models.Model):
    Numara = models.IntegerField(max_length=10)
    Isim = models.CharField(max_length=30)
    Soyisim = models.CharField(max_length=30)


class Islem(models.Model):
    MenuAd = models.CharField(max_length=30)
    Tarih = models.DateTimeField(auto_now_add=True)
    Personel = models.ForeignKey(Personel)
    Durum = models.PositiveIntegerField(max_length=5)

这是我的疑问:

sorgu = Islem.objects.all().values('MenuAd', 'Personel')

sorgu结果:

[{'MenuAd': 'Deneme', 'Personel': 2 }]

但是,我想结果:

[{'MenuAd': 'Deneme', 'Personel': '2 - Baris Halici'}]

Numara:2
Isim:Baris
Soyisim:Halici

示例 - 提案

def get_full_personel(self):
    return "'%s - %s %s" % (self.Numara, self.Isim, self.Soyisim)

谢谢,

1 个答案:

答案 0 :(得分:0)

尝试更改您的:

class Personel(models.Model):
    def __unicode___(self):
        return "'%s - %s %s" % (self.Numara, self.Isim, self.Soyisim)

___str___(self):如果使用python 3。

虽然这可能无法解决...尝试:

sorgu = Islem.objects.all().values('MenuAd', 'Personel__get_full_personel')