2009-09-04 89 views
2
#admin.py 
class GameListAdmin(admin.ModelAdmin): 
    list_display = ['game', 'position'] 
    ordering = ('position',) 

class GameAdmin(admin.ModelAdmin): 
    list_display = ['name', 'status'] 
    actions = [make_published] 

#models.py 
class Game(models.Model): 
    name = models.CharField(max_length=200) 
    status = models.CharField(max_length=1, choices=STATUS_CHOICES) 

    def __unicode__(self): 
     return self.name 

class GameList(models.Model): 
    game = models.ForeignKey(Game) 
    position = models.IntegerField() 

    def __unicode__(self): 
     return self.game.name 

我試圖表現出game.status在GameListAdmin的list_display但不 知道如何做一個使用ForeignKey的在Admin.py問題有關admin.py list_display

任何想法向後查找?

+0

@Rob乙 - 我搬到你的代碼內聯,因此,這個問題將堅持有意義一次dpaste.com的自動刪除您的代碼段。 – 2009-09-04 10:57:33

回答

2

你可以這樣說:

def get_status(obj): 
    return '%s' % (obj.game.status) 
get_status.short_description = 'Status' 

class GameListAdmin(admin.ModelAdmin): 
    list_display = ['game', 'position', get_status] 

docs

+0

輝煌,謝謝。 – 2009-09-04 11:26:20