编辑django管理员更改列表项

时间:2016-10-31 18:16:47

标签: python django python-2.7 django-admin

所以目前我有一个django模型管理页面,指定了一些额外的字段。我希望能够只修改1个字段,以便不是列出值,而是点击它来转到URL。

假设模型是Product,字段是ID。现在它显示ID但我希望能够点击更改列表上的ID转到以下URL:

http://google.com/ID

http://google.com/未保存在任何地方。

我将如何做到这一点?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以通过自定义ModelAdmin的“list_display”字段来执行此操作:

from django.contrib import admin

@admin.register(MyModel)
class MyAdmin(admin.ModelAdmin):
    list_display = (
        # put all other fields you want to be shown in listing
        'id_link',
    )

    def id_link(self, obj):
        return 'http://google.com/' + self.id
    id_link.short_description = 'ID'

请参阅https://docs.djangoproject.com/en/1.10/ref/contrib/admin/#django.contrib.admin.ModelAdmin.list_display