django - Django管理员changelist_view中的自定义html字段

标签 django django-admin django-urls

我想对Django管理员进行一些自定义-尤其是changelist_view

class FeatureAdmin(admin.ModelAdmin):
    list_display = (
        'content_object_change_url',
        'content_object',
        'content_type',
        'active',
        'ordering',
        'is_published',
    )

    list_editable = (
       'active',
       'ordering',
    )

    list_display_links = (
        'content_object_change_url',
    )

admin.site.register(get_model('features', 'feature'), FeatureAdmin)

这个想法是'content_object_change_url'可以是到另一个对象的change_view的链接...方便管理员用户直接导航到该项目。

我遇到这种情况的另一种情况是添加到外部源的链接或图像字段的缩略图。

我以为我听说过“插入HTML”选项-但也许我已经超越了我自己。

感谢您的帮助!

最佳答案

您可以在FeatureAdmin类上提供一个自定义方法,该方法返回content_object_change_url的HTML:

class FeatureAdmin(admin.ModelAdmin):

    [...]

    def content_object_change_url(self, obj):
        return '<a href="%s">Click to change</a>' % obj.get_absolute_url()
    content_object_change_url.allow_tags=True

参见the documentation

关于django - Django管理员changelist_view中的自定义html字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3820182/

相关文章:

django - Docker + Django + Postgres 附加组件 + Heroku

python - pip search django 产生超时错误

python - Django 中的表单——无法超越 "cleaned_data"

Django 管理员 : How to populate a new object from GET variables?

python - 如何使用 Django Rest Framework 将 url 字段添加到序列化程序

regex - django url 正则表达式不匹配

python - django:自动检测数据库上所做的 CRUD 更改

django-admin - Django 管理员操作选择复选框删除?

Django::OperationalError at/admin/login/无法打开数据库文件

Django:如何使 URL 的一部分可选