通过django-import-export更新相关字段的最佳位置

时间:2017-12-25 23:12:05

标签: python django django-import-export

在我们的项目中,我们必须导入和导出* .xls和其他格式的复杂模型。 django-import-export伟大的工具并帮助了我们。我编写了很多用于创建/编辑相关模型的代码,这些代码与其他元字段(深层中的两个或三个级别)相关。我在我们的基础ModelResource中使用了import_row,import_field,before_import_row和其他方法。

现在我在哪里放置简单逻辑代码时遇到了一些麻烦。我们想要更新相关对象的字段。 例如:

class Author(models.Model):
    name = models.CharField(max_length=100)

class Book(models.Model):
    author = models.OneToOneField(Author)

我想通过图书资源导出和导入(更新)author__name。我试图为这个领域编写Widget,但这不是一个好主意。

请举例说明如何以正确的方式从BookResource导出end import author__name。

1 个答案:

答案 0 :(得分:0)

抱歉这个愚蠢的问题(我的其他代码有问题)。解决方案非常简单。

class BookResource(Resource):
    author_name = Field(attribute='author__name')

    class Meta:
        fields = ('author_name',)

它有效。