在更改列表、更改表单或更改列表中的每行中显示django管理自定义操作。
django-admin-actions的Python项目详细描述
django管理操作
django管理操作提供了一种简单的方法,如何为django管理变更列表、变更视图和变更列表中的每行定义自定义操作。
开始
- 安装
pip install django-admin-actions
pip install git+https://git@github.com/lukasvinclav/django-admin-actions.git
- 在django.contrib.admin之前,将admin\u操作添加到installed\u应用程序中。
管理配置示例
fromdjango.contribimportadminfromdjango.shortcutsimportredirectfromdjango.urlsimportreverse_lazyfromdjango.utils.translationsimportugettext_lazyas_fromadmin_actions.adminimportActionsModelAdminfrom.modelsimportExampleModel@admin.register(ExampleModel)classCustomAdmin(ActionsModelAdmin):actions_list=('custom_list_action',)actions_row=('custom_row_action',)actions_detail=('custom_detail_action',)defcustom_list_action(self,request):# custom logic herereturnredirect(reverse_lazy('admin:APP_MODEL_changelist'))custom_list_action.short_description=_('Custom name')custom_list_action.url_path='clean-url-path-1'defcustom_row_action(self,request,pk):# custom logic herereturnredirect(reverse_lazy('admin:APP_MODEL_changelist'))custom_row_action.short_description=_('Row custom name')custom_row_action.url_path='clean-url-path-2'defcustom_detail_action(self,request,pk):# custom logic herereturnredirect(reverse_lazy('admin:APP_MODEL_changelist'))custom_detail_action.short_description=_('Detail custom name')custom_detail_action.url_path='clean-url-path-3'