Django 导入导出排除不起作用

Gar*_*ary 3 django python-2.7 django-import-export

我一直在使用 Django 导入导出,以便可以从数据库中获取 csv 文件。这些 csv 文件有一些不相关的字段,因为当项目放入数据库时​​它们会发生更改,因此我不希望它们出现在表中。

我已遵循导入导出的文档,但似乎无法正确排除这些字段。在我的 admin.py 文件中,我有:

from import_export import resources
from import_export.admin import ImportExportModelAdmin

class ArtAdmin(ImportExportModelAdmin):
    list_display = ['id', 'name', 'category', 'type', 'agent', 'authenticate', ]
    search_fields = ('name', 'category', 'artist', 'id', 'authenticate', )
    list_filter = ["authenticate"]
    actions = [approve_art, reject_art]

class ArtResource(resources.ModelResource):

    class Meta:
        model = Art
        exclude = ('authenticate', )
Run Code Online (Sandbox Code Playgroud)

当我进入 python manage.py shell 并让它打印出 csv 时,这就是我所期望的,但是当我使用 python manage.py runserver 然后导出它时,我仍然会看到身份验证列,有人知道吗如何解决这个问题?

F L*_*bbé 5

您似乎忘记将资源类与 modeladmin 链接起来

class ArtResource(resources.ModelResource):

    class Meta:
        model = Art
        exclude = ('authenticate', )

    class ArtAdmin(ImportExportModelAdmin):
        resource_class = ArtResource

    list_display = ['id', 'name', 'category', 'type', 'agent', 'authenticate', ]
    search_fields = ('name', 'category', 'artist', 'id', 'authenticate', )
    list_filter = ["authenticate"]
    actions = [approve_art, reject_art]
Run Code Online (Sandbox Code Playgroud)