2009-09-04 9 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 

Je suis en train de montrer game.status dans list_display de GameListAdmin mais pas sûr comment faire une recherche en arrière en utilisant le ForeignKey dans Admin.pyquestion sur admin.py list_display

Toutes les idées?

+0

@Rob B - Je déplacé votre code en ligne, de sorte que cette question collera logique une fois dpaste.com a automatiquement supprimé votre extrait. –

Répondre

2

Vous pouvez le faire comme ceci:

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

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

Voir la docs.

+0

Brillant, merci. –