我在我的网络项目的应用程序中使用django-import-export。
class.py 文件为:
class Article(models.Model):
siret = models.CharField(max_length=16)
newspaper = models.CharField(max_length=200)
writer = models.CharField(max_length=1000)
TOPIC_TYPE = (
('Sport', 'Sport'),
('Beauté','Beauté'),
('Food', 'Food'),
('Business', 'Business'),
('Music', 'Music'),
('Art', 'Art'),)
topics = MultiSelectField(choices = TOPIC_TYPE)
请注意主题是MultiSelectField 在 admin.py 中,我只是按照django-import-export教程进行操作,因此:
class ArticleResource(resources.ModelResource):
class Meta:
model = Article
exclude = ('is_true', )
class ArticleAdmin(ImportExportModelAdmin):
resource_class = ArticleResource
admin.site.register(Article, ArticleAdmin)
导入数据时的问题与您猜测的"主题"变量。
我首先导出了一个xlsx文件,以查看此变量的导出方式。这就是字面意思:
siret ... topics
-----------------------------------
0000068591590 ... Music, Art
0000068591595 ... Business, Beauté
0000068591600 ... Art
问题在于数据导入。
我只是尝试通过更改" siret"来导回上面导出的文件。数字。
导入后,在管理界面中,我很惊讶,Django通过在可用的CheckBoxes中仅选择每篇文章的第一个主题来嘲笑我(仅适用于0000068591590的音乐,仅适用于0000068591595的商业)。
因此我试图通过以下方式导入:
音乐,艺术(作为出口方式)
['音乐''艺术']
[音乐,艺术]
然而它不起作用。
TY
答案 0 :(得分:0)
导入excel文件时,请注意空格... Django 出口,如
siret ... topics
-----------------------------------
0000068591590 ... Music, Art
0000068591595 ... Business, Beauté
0000068591600 ... Art
注意主题变量中的空格 您只需要导入多选选项,例如:
siret ... topics
-----------------------------------
0000068591590 ... Music,Art
0000068591595 ... Business,Beauté
0000068591600 ... Art