Python 我如何让不同的django管理员彼此友好相处?
我试图使用Python 我如何让不同的django管理员彼此友好相处?,python,django,django-admin,mixins,django-import-export,Python,Django,Django Admin,Mixins,Django Import Export,我试图使用django导入导出和django-admin-sortable2,但它们似乎不能同时工作 我第一次做这个: from import_export.admin import ImportExportActionModelAdmin class PageAdmin(ImportExportActionModelAdmin): 导入和导出的显示和功能与预期一致。然后我添加了SortableAdminMixin: from import_export.admin import Import
django导入导出
和django-admin-sortable2
,但它们似乎不能同时工作
我第一次做这个:
from import_export.admin import ImportExportActionModelAdmin
class PageAdmin(ImportExportActionModelAdmin):
导入和导出的显示和功能与预期一致。然后我添加了SortableAdminMixin
:
from import_export.admin import ImportExportActionModelAdmin
from adminsortable2.admin import SortableAdminMixin
class PageAdmin(SortableAdminMixin,ImportExportActionModelAdmin):
出现了可排序功能,但这似乎与导入功能冲突,导入按钮消失。我试着重新订购:
from import_export.admin import ImportExportActionModelAdmin
from adminsortable2.admin import SortableAdminMixin
class PageAdmin(SortableAdminMixin,ImportExportActionModelAdmin):
这一次,项目不再可排序,但“导入”按钮重新出现。我还尝试将导入和导出分离:
from import_export.admin import ExportActionModelAdmin, ImportMixin
from adminsortable2.admin import SortableAdminMixin
class PageAdmin(ImportMixin,SortableAdminMixin,ExportActionModelAdmin):
但是没有用。我如何让这些管理员混音器彼此配合得很好
每个mixin都具有以下功能:
:
看起来唯一常见的功能是获取URL—这可能是冲突所在吗?此软件包的评级过高。转储和导出数据的最佳方法是在数据库级别。我有非技术合作者,对他们来说,点击(包括通过管理界面过滤)似乎比shell命令更好。听说过图形数据库客户端吗?
def change_list_template(self):
def __init__(self, model, admin_site):
def _get_update_url_name(self):
def get_urls(self):
def get_actions(self, request):
def get_changelist(self, request, **kwargs):
def media(self):
def _add_reorder_method(self):
def update_order(self, request):
def save_model(self, request, obj, form, change):
def move_to_exact_page(self, request, queryset):
def move_to_back_page(self, request, queryset):
def move_to_forward_page(self, request, queryset):
def move_to_first_page(self, request, queryset):
def move_to_last_page(self, request, queryset):
def _get_order_direction(self, request):
def _move_item(self, request, startorder, endorder):
def get_extra_model_filters(self, request):
def get_max_order(self, request, obj=None):
def _bulk_move(self, request, queryset, method):
def changelist_view(self, request, extra_context=None):
def get_update_url(self, request):
def get_skip_admin_log(self):
def get_tmp_storage_class(self):
def get_urls(self):
def get_resource_kwargs(self, request, *args, **kwargs):
def get_import_resource_kwargs(self, request, *args, **kwargs):
def get_resource_class(self):
def get_import_resource_class(self):
def get_import_formats(self):
def process_import(self, request, *args, **kwargs):
def process_dataset(self, dataset, confirm_form, request, *args, **kwargs):
def process_result(self, result, request):
def generate_log_entries(self, result, request):
def add_success_message(self, result, request):
def get_import_context_data(self, **kwargs):
def get_context_data(self, **kwargs):
def import_action(self, request, *args, **kwargs):