Django:我怎样才能在管理员中添加一个字段,当使用modelform时,该字段具有指向另一个模型管理员的链接?

时间:2013-02-08 15:03:09

标签: django admin modelform

在表格管理员中,我想提供编辑模型的直接链接,该模型位于我的记录的外键中。 当我使用reverseurl明确定义管理字段时,它工作正常,如下所示:

class MediaInline(admin.TabularInline):
  fieldsets = [
    (None, {'fields': ['media', 'media_id',...
  ]
  readonly_fields = ['media_id']
  ...


  def media_id(self, object):
      url = reverse('admin:%s_%s_change' %(object._meta.app_label,  'medialinks'),  args=[object.media.id] )
      return u'<a href="%s">%s</a>' %(url,  object.media.id)
  media_id.allow_tags = True

但是,现在我想用表格定义表格,我不知道怎么能再做了。我将HTMl标记作为字符串,但我没有找到将其视为HTML标记的方法。

btw,我需要一个表单而不是一个明确的定义的原因是我希望能够在这个表格列表中订购另一个下拉字段,我发现如何做到这一点的唯一方法是在表单设置中。

1 个答案:

答案 0 :(得分:0)

模型形式不应该阻止你这样做。

确保不要移动此代码。您不能将字段覆盖代码放在ModelForm中。

你使用ModelForm 在ModelAdmin(TabularInline)中有覆盖。