我的models.py文件是
from django.db import models
class companyDetail(models.Model):
short_code = models.CharField(primary_key=True, max_length=50)
title = models.CharField(max_length=50)
page_title = models.CharField(max_length=50)
class Meta:
verbose_name = "companyDetail"
verbose_name_plural = "companyDetails"
def __str__(self):
return self.title
class companyDescription(models.Model):
comDetail = models.OneToOneField(
companyDetail,
on_delete=models.CASCADE,
related_name='coDetail',
primary_key=True,
)
description = models.CharField(max_length=5000)
add_description = models.CharField(max_length=5000)
class Meta:
verbose_name = "companyDescription"
verbose_name_plural = "companyDescriptions"
def __str__(self):
return self.comDetail.title我试图将我的模型/表格"company“分解成两个不同的模型"companyDetail”和"companyDescription“,并通过OneToOneField将它们连接起来。
当我试图通过shell添加数据时,它工作得很好。
我正在为模型"companyDetail“导入csv到django-import-export它工作正常,但是我正在为模型"companyDescription”导入csv,它抛出错误:
Traceback (most recent call last):
File "/home/abhirajput/testpro/myenv/lib/python3.5/site-packages/import_export/resources.py", line 453, in import_row
instance, new = self.get_or_init_instance(instance_loader, row)
File "/home/abhirajput/testpro/myenv/lib/python3.5/site-packages/import_export/resources.py", line 267, in get_or_init_instance
instance = self.get_instance(instance_loader, row)
File "/home/abhirajput/testpro/myenv/lib/python3.5/site-packages/import_export/resources.py", line 261, in get_instance
return instance_loader.get_instance(row)
File "/home/abhirajput/testpro/myenv/lib/python3.5/site-packages/import_export/instance_loaders.py", line 31, in get_instance
field = self.resource.fields[key]
KeyError: 'comdetail'请帮助我在外行方面,因为我是一个土木工程师试图进入网络开发和打破表格(绝命毒师)。如果您对将模型/表格"company“分解为两个模型"companyDetail”和"companyDescription“有任何其他建议,请告诉我。
提前感谢
发布于 2018-09-27 20:54:39
有一个打字错误:
KeyError: 'comdetail'
related_name='coDetail',发布于 2021-08-08 04:55:23
我知道这有点太晚了。你需要在你的应用中创建一个资源文件。
class companyDescriptionResource(resources.ModelResource):
class Meta:
model = companyDescription
import_id_fields = ['comDetail']
https://stackoverflow.com/questions/52537446
复制相似问题