【发布时间】:2021-09-17 17:48:55
【问题描述】:
我想知道是否可以导入数据,但表中没有名为 id
的列我的导入对包含 column id 的每个表都很好,但对于不包含列 id 的表则不起作用。我得到一个 row_error 说:
Error: 'id'
模型无法导入
class CustomizingObject(models.Model):
code = models.CharField(max_length=40, primary_key=True, unique=True, help_text="Human readable code")
我的功能
from import_export import resources
lo_resource = resources.modelresource_factory(model=lo_resource_to_import)() # lo_resource_to_import is the model
with open(lv_local_filename, 'r', encoding='utf-8') as f:
csv_data = f.read()
lt_dataset = tablib.Dataset().load(csv_data, 'csv')
result = lo_resource.import_data(lt_dataset, dry_run=True)
if not result.has_errors():
result = lo_resource.import_data(lt_dataset, dry_run=False)
Logger.Info("import", 2) # Import over
else :
Logger.Error("import", 3, lv_local_filename) # Input file {} has error
for ld_error in result.row_errors():
Logger.Error("import", 5, ld_error[1][0].error) # Error: {}
【问题讨论】:
-
您必须在脚本中设置
PrimaryKey字段。如果您使用流行的图书馆,请在其文档中搜索。 -
请edit你的问题显示你正在使用的代码
-
我已经编辑了这个问题,我正在使用来自 Django 的资源。
标签: python python-3.x django csv export-to-csv