Jayme Tosi Neto
Jayme Tosi Neto

Reputation: 1239

How do I add a custom button to the admin listing?

What I want is to put a custom button in each row of a page of the admin listing.
These buttons will have a function associate to it acting over that line.
I've already knew the "admin actions", but it's not what I want, ok?

Thank you!

Upvotes: 7

Views: 12806

Answers (1)

Bernhard Vallant
Bernhard Vallant

Reputation: 50796

You can declare in your ModelAdmin a function to generate the html for your button, e.g.

    def button(self, obj):
        return mark_safe('<input type="...">')
    title.short_description = 'Action'
    title.allow_tags = True

And then put it in your in your list_display-tuple.

class MyAdmin(admin.ModelAdmin)
    list_display=('name', 'button')

http://docs.djangoproject.com/en/dev/ref/contrib/admin/#modeladmin-options

Upvotes: 28

Related Questions