我试图将数据导入到我的模型之一,但它失败,因为我试图上传外键id,而不是导入导出创建的迭代数字。将foreignKey小部件添加到django-import-export
models.py
from django.db import models
from import_export import resources
class School(models.Model):
name = models.CharField(max_length=100)
slug = models.CharField(max_length=100)
school_id = models.IntegerField(unique=True)
class Sol(models.Model):
school_id = models.ForeignKey(School, to_field='school_id')
name = models.CharField(max_length = 100)
Al1EOC = models.DecimalField(max_digits=5, decimal_places=2)
AL2EOC = models.DecimalField(max_digits=5, decimal_places=2)
#Class for django-import-export
class SolResource(resources.ModelResource):
class Meta:
model = Sol
我的admin.py
from import_export.admin import ImportExportModelAdmin
class SolAdmin(ImportExportModelAdmin):
list_display = ('name', 'school_id')
resources_class = SolResource
pass
admin.site.register(Sol, SolAdmin)
我data.csv
id, name, school_id, Al1EOC, AL2EOC
,'Main st school', 1238008, 12.9, 14.9
当我从SOL模型导出数据,我得到一个迭代学校编号。我需要实际的学校ID - 持有ForeignKey关系的学校ID。随后,我需要使用该外键号码上传数据。我知道ForeignKey小部件是实现它的方式,但我不明白它是如何实现的。
您可以发布您在导入过程中收到的错误消息吗? – 2014-10-10 00:30:19