我試圖顯示管理界面中的manytomanyfield的內容。我有以下代碼:django顯示內容manytomanyfield
class Member(models.Model):
group = models.ManyToManyField('Group')
def group_gp_name(self):
return self.group.gp_name
def __unicode__(self):
return u'%s' % (self.id)
class Group(models.Model):
gp_name = models.TextField(verbose_name=u'Group Name')
def __unicode__(self):
return u'%s - %s' % (self.id, self.gp_name)
在管理我有這樣的事情:
class MemberAdmin(admin.ModelAdmin):
list_display = ('group_gp_name')
此方法處理爲外鍵顯示數據。顯然,這不適用於ManytoManyFields ..所以我的問題是,我怎樣才能顯示我的組名在我的管理員頁下的成員。所以,當我點擊'會員'的管理員時,我想立即看到由多人關係加上的組名的內容?
更新! - 我不想在我的更改頁面中顯示它們只是想在表格中看到結果。我發現這一點,它幾乎是我想要什麼:
def get_sol(self):
return self.group.all()
這工作,但認爲是有點怪異,它顯示了這樣的事情:
<Group: Administrators >]
的問題是,我不希望看到那些'[Group:'和'>]',那麼我該如何擺脫這些?
UPDATE2 !!!
它幫了我,但如果發生這種情況呢?我有一個名爲Test這樣的第3表:
class Test(models.Model):
member = models.ForeignKey('Member')
現在,我想在管理視圖「測試」從表「組」組名顯示,這怎麼可能?
任何幫助表示讚賞。
問候, 牛逼
我編輯了我的答案 - 讓我知道它是否適合你! – 2010-08-12 08:51:01