在django modeladmin中显示单个记录

时间:2014-03-26 11:53:00

标签: python django django-models django-admin

我想实现这样的事情: 我的模型A管​​理员有一个状态字段,它是模型B管理员的链接。 现在,当我点击带有模型B管理员链接的行的列时,它应该转到它当前正在进行的模型B管理员,但它应该只显示我点击的所有记录模型B中的单个记录。 模型A包含模型B记录的外键,这是应在管理视图中显示的记录

1 个答案:

答案 0 :(得分:2)

我建议你做下面我正在做的事情。
Django admin为您提供了一个特定字段名称的方法,您已将其定义为list_display 在该方法中,您将获得该字段的ovveride返回内容,如下所示。

class AAdmin(admin.ModelAdmin):
    list_display = ('id', 'email_settings')
    """ """
    def email_settings(self, obj):
         from django.core.urlresolvers import reverse
         return '%s'%('/admin/core/emailsetting/?id='+str(obj.email_setting.id), obj.email_setting.id)
    email_settings.allow_tags = True
    email_settings.short_dscription = "Email Setting Link"

在这里你可以看到url是硬编码的。 您可以使用_meta 获取应用名称和型号名称。 示例:

 obj._meta.app_name