- March 2, 2008
- admin multiple delete hooks
- 1 (after 1 ratings)
This snippet demonstrates the use of the SpecialOps patch ( link here )to the django 0.96 admin. Once you have the patch, adding actions like these is simple.
You can use the @admin_action decorator on model and manager methods to expose them inside the admin. For manager methods, the method should accept a list of IDs. For model methods, only self should be required.
1 2 3 4 5 6 7 8 9 10 11 12 13 14
from django.contrib.admin.decorators import admin_action # inside CommentManager in django.contrib.comments.models @admin_action( name='Delete selected posts' ) def multi_delete( self, id_list ): res = "" for id in id_list: obj = self.get( pk=id ) res += repr( obj ) obj.delete() res += "<br/>\n" return "Deleted %s" % res