我在我的Django項目兩種型號:在Django中,你不能在ManyToManyField上使用字符串連接嗎? ManyToMany不只是一個列表嗎?
- 比賽
- 球員
比賽有一個多對多酒店在玩家的指點下,讓多個玩家可以在比賽中競爭。我想通過加入玩家的全名,在Django管理員中返回一個信息豐富的對象名稱,例如「Richard Henry vs John Doe」。但是,以下失敗:
class Match(models.Model):
players = models.ManyToManyField(Player, verbose_name='Competitors')
def __unicode__(self):
return " vs ".join(self.players)
ManyToManyFields不只是列出?爲什麼我不能加入他們?任何輸入讚賞。這是我的球員模型,incase幫助:
class Player(models.Model):
full_name = models.CharField(max_length=30)
def __unicode__(self):
return "%s" % self.full_name
謝謝!
編輯:我剛剛發現,我可以使用self.players.list_display
這個返回列表。我不再吐出一個回溯,但由於某種原因,__unicode__
名稱現在返回None
。任何想法爲什麼會這樣?
編輯2:更改代碼:
class Match(models.Model):
players = models.ManyToManyField(Player, verbose_name='Competitors')
def __unicode__(self):
return " vs ".join(self.players.list_display)
美國洛特:剛剛發佈了 '編輯2'。 – rmh 2009-02-25 10:44:51