13-8 excel导入插件介绍




C:\Users\hlg\PycharmProjects\MxOnline\extra_apps\xadmin\plugins\excel.py

# coding:utf-8

import xadmin
from xadmin.views import BaseAdminPlugin, ListAdminView
from django.template import loader


#excel 导入
class ListImportExcelPlugin(BaseAdminPlugin):
    import_excel = False

    def init_request(self, *args, **kwargs):
        return bool(self.import_excel)

    def block_top_toolbar(self, context, nodes):
        nodes.append(loader.render_to_string('xadmin/excel/model_list.top_toolbar.import.html', context_instance=context))


xadmin.site.register_plugin(ListImportExcelPlugin, ListAdminView)
13-8 excel导入插件介绍_第1张图片

C:\Users\hlg\PycharmProjects\MxOnline\apps\courses\adminx.py

13-8 excel导入插件介绍_第2张图片


然后

C:\Users\hlg\PycharmProjects\MxOnline\extra_apps\xadmin\templates\xadmin\excel\model_list.top_toolbar.import.html

{% load i18n %}
导入
13-8 excel导入插件介绍_第3张图片

C:\Users\hlg\PycharmProjects\MxOnline\MxOnline\settings.py

13-8 excel导入插件介绍_第4张图片

C:\Users\hlg\PycharmProjects\MxOnline\apps\courses\adminx.py

    def post(self, request, *args, **kwargs):
        #  导入逻辑
        if 'excel' in request.FILES:
            pass
        return super(CourseAdmin, self).post(request, args, kwargs)

13-8 excel导入插件介绍_第5张图片

C:\Users\hlg\PycharmProjects\MxOnline\extra_apps\xadmin\plugins\__init__.py

13-8 excel导入插件介绍_第6张图片

效果:

13-8 excel导入插件介绍_第7张图片



































你可能感兴趣的:(python)