我正在使用django import-export导入文件,我想获取每一行的值。
例如:
import_resource = ImportResource()
dataset = Dataset()
imported_data = dataset.load(import_file.read().decode('utf-8'))
result = import_resource.import_data(dataset, dry_run=True)
我用result.rows
遍历Result的各行,每行似乎都有一个raw_values
属性,但返回空。
答案 0 :(得分:0)
尝试以下代码。
class OtherResource(resources.ModelResource):
"""
My code
"""
def before_import_row(self, row, **kwargs):
row['created_by'] = kwargs.get('user')
row['modified_by'] = kwargs.get('user')
class MyClassAdmin(ImportMixin, admin.ModelAdmin):
resource_class = OtherResource
def import_data(self, dataset, dry_run=False, raise_errors=False, use_transactions=None, collect_failed_rows=False, **kwargs):
"""
Getting the user's request to pass it to the import
"""
result = OtherResource.import_data(dataset, dry_run=False, raise_errors=False, use_transactions=None, user=self.request.user)
return result
您必须记住有很多动作,例如:before_import_row,after_import_row等。