django - 关于 admin.py list_display 的问题

标签 django django-admin

#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

我试图在 GameListAdmin 的 list_display 中显示 game.status 但没有 确定如何使用 Admin.py 中的foreignkey进行向后查找

有什么想法吗?

最佳答案

你可以这样做:

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 .

关于django - 关于 admin.py list_display 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1378447/

相关文章:

django - 字段标签脆形式 Django

python - Django - 将选择限制为取决于实例的东西

django admin 中批量删除时出现 mysql 1205 错误

mysql - 显示 django admin 中另一个模型中的记录

javascript - 如何将数据值从 View 传递到 Django 中的模板?

python - 不要国际化/翻译 URL

python - 操作系统错误 : mysql_config not found

python - 神秘的 "embedded null byte"错误

Django - 如何通过 post_save 信号保存 m2m 数据?

django - 如何更改 Django 管理表单的布局和字段配置?