我一直在使用 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', )
当我进入 python manage.py shell 并让它打印出 csv 时,这就是我期望的样子,但是当我使用 python manage.py runserver 然后导出它时,我仍然会看到身份验证列,有谁知道如何解决这个问题?
似乎您忘记将资源类与模型管理员链接
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]