首页 > 解决方案 > 导入 xlsx 中的 django 导入导出错误

问题描述

我不明白为什么在尝试插入 xlsx 文件时会出现此错误。这是我的模型

class Finance(models.Model):
invoiceNumber = models.CharField(blank=False, null=False, 
primary_key=True)
student = models.CharField(max_length=50, blank=False, null=False)
rollGroup = models.CharField(max_length=50, blank=False, null=False)
invoiceTo = models.CharField(max_length=50, blank=False, null=False)
dob = models.CharField(max_length=50, null=True)
gender = models.CharField(max_length=50, blank=False, null=False)
status = models.CharField(max_length=50, blank=False, null=False)
schedule = models.CharField(max_length=50,blank=False, null=False)
totalValue = models.CharField(max_length=50, blank=False, null=False)
issueDate = models.CharField(max_length=50, null=True)
dueDate = models.CharField(max_length=50, null=True)
datePaid = models.CharField(max_length=50, null=True)
amountPaid = models.CharField(max_length=50, null=True)

def __str__(self):
    return self.invoiceNumber

这是我的资源模型

class FinanceResource(resources.ModelResource):

    invoiceNumber = Field(attribute='invoiceNumber', column_name='Invoice 
    Number')
    student = Field(attribute='student', column_name='Student')
    rollGroup = Field(attribute='rollGroup', column_name='Roll Group')
    invoiceTo = Field(attribute='invoiceTo', column_name='Invoice To')
    dob = Field(attribute='dob', column_name='DOB')
    gender = Field(attribute='gender', column_name='Gender')
    status = Field(attribute='status', column_name='Status')
    schedule = Field(attribute='schedule', column_name='Schedule')
    totalValue = Field(attribute='totalValue', column_name='Total             
    Value(PKR 
    ₨)')
    issueDate = Field(attribute='issueDate', column_name='Issue Date')
    dueDate = Field(attribute='dueDate', column_name='Due Date')
    datePaid = Field(attribute='datePaid', column_name='Date Paid')
    amountPaid = Field(attribute='amountPaid', column_name='Amount Paid     
    (PKR 
    ₨)')

class Meta:
    model = Finance

import_id_fields = ('invoiceNumber',)
export_order = ('invoiceNumber', 'student', 'rollGroup', 
'invoiceTo', 'dob', 'gender', 'status', 'schedule',
                'totalValue', 'issueDate', 'dueDate', 'datePaid', 
'amountPaid')

skip_unchanged = True
report_skipped = True

我得到的错误 这是我不断收到的错误

当我使用默认主键时,我得到

行号:1 - str返回非字符串(int 类型) 2、styles、harry、Spring 2020、Family、None、M、Pending、First Installment、57000、None、10/06/2020、None、0 Traceback(大多数最近通话最后):文件“C:\Users\long playcomputers\PycharmProjects\DotsPrototype\venv\lib\site-packages\import_export\resources.py”,第 559 行,在 import_row row_result.object_repr = force_str(instance) 文件中C:\Users\long playcomputers\PycharmProjects\DotsPrototype\venv\lib\site-packages\django\utils\encoding.py",第 64 行,在 force_str s = str(s) TypeError: str returned non-string (type诠释)

标签: djangodjango-import-export

解决方案


推荐阅读