使用应用程序django-import-export.以下是其中一个模型的示例配置:
class ImportExportAdsTypeResource(resources.ModelResource): class Meta: model = AdType import_id_fields = ('name',) fields = ['name', 'active', 'position', 'categories', 'sites']
站点和类别 - 是一个m2m字段.导出工作正常,我们得到这样的CSV文件,其中包含以下内容:
name,active,position,sites,categories Excport CSV test,1,13,1,"19,26"
但是当你尝试导入m2m字段时没有添加.如何使用m2m关系导入数据?!
django-import-export有自己的小部件来处理模型关系:
from import_export import fields, resources from import_export.widgets import ManyToManyWidget class ImportExportAdsTypeResource(resources.ModelResource): categories = fields.Field(widget=ManyToManyWidget(Category)) sites = fields.Field(widget=ManyToManyWidget(Site)) class Meta: model = AdType import_id_fields = ('name',) fields = ['name', 'active', 'position', 'categories', 'sites']
在这里查看其他小部件:django-import-export小部件