如何在django管理界面中添加带有超链接的自定义列?

我有一个django管理界面,在模型列表中,我想要一个自定义列,该列将是使用字段值之一的超链接。基本上,模型的字段之一是URL,我希望该列在可单击的超链接中具有该URL。该链接将需要附加其他URL,作为其在model字段中的相对路径。

回答:

在ModelAdmin类中定义一个方法,并将其allow_tags属性设置为True。这将允许该方法返回未转义的HTML,以显示在该列中。

然后在ModelAdmin.list_display属性中将其作为条目列出。

例:

class YourModelAdmin(admin.ModelAdmin):

list_display = ('my_url_field',)

def my_url_field(self, obj):

return '<a href="%s%s">%s</a>' % ('http://url-to-prepend.com/', obj.url_field, obj.url_field)

my_url_field.allow_tags = True

my_url_field.short_description = 'Column description'

以上是 如何在django管理界面中添加带有超链接的自定义列? 的全部内容, 来源链接: utcz.com/qa/431893.html

回到顶部