Python Django导入/导出到多个模型(foreignkey)

Python Django导入/导出到多个模型(foreignkey),python,django,django-import-export,Python,Django,Django Import Export,这已经被问了好几次了,但没有一个解决方案对我有效 下面的代码可以工作(因为没有错误),但它看不到任何要将新的数据导入到外键类的内容。仅当外键中已存在数据时,才会导入数据 这有意义吗 Models.py(代码片段) Admin.py admin.site.register(Category) admin.site.register(Store) class ProductResource(resources.ModelResource): store_name = fields.Fi

这已经被问了好几次了,但没有一个解决方案对我有效

下面的代码可以工作(因为没有错误),但它看不到任何要将新的数据导入到外键类的内容。仅当外键中已存在数据时,才会导入数据

这有意义吗

Models.py(代码片段)

Admin.py

admin.site.register(Category)
admin.site.register(Store)

class ProductResource(resources.ModelResource):

     store_name = fields.Field(column_name='store_name', attribute='Store',
                       widget=ForeignKeyWidget(Store, 'store_name'))

    def __unicode__(self):
        return self.store_name.name

    class Meta:
        model = Product
        fields = ('id', 'first_name', 'second_name','store_name')
        export_order = ('id', 'second_name', 'first_name')
        skip_unchanged = False
        report_skipped = False
        widgets = {
                'published': {'format': '%d.%m.%Y'},
                }


class ProductAdmin(ImportExportModelAdmin):
    resource_class = ProductResource
    list_display = ('first_name', 'second_name')

admin.site.register(Product, ProductAdmin)

他们有一个用于此的小部件-。我不知道如何使用它。

试试看

 store_name = fields.Field(column_name='store_name', attribute='Store',
                           widget=ForeignKeyWidget(Store, 'store_name'))
我建议您命名模型字段
未资本化

很难理解你到底在问什么

如果您的意思是“希望创建外键对象并用excel数据填充外键对象的属性”


我认为您需要首先创建外部对象并将其与其他模型关联,这意味着您需要在ModelResource类中重写或定义一个函数,并从管理员处调用它。

是-我也尝试过这种方法。我真的很想知道这方面的任何方向。以下是我要做的(我更新了原来的帖子)
code
class-ProductResource(resources.ModelResource):store\u name=fields.Field(widget=widgets.ForeignKeyWidget(store,'store\u name'))def\uu unicode\uuuu(self):返回self.store\u name.name类元:model=Product fields=('id','first\u name','second\u name','store\u name')……谢谢。我没有正确读取错误-问题是我想将新字段导入外键。它只允许我导入已经存在的值(到外部字段)。如果数据不存在,我如何说导入值?
 store_name = fields.Field(column_name='store_name', attribute='Store',
                           widget=ForeignKeyWidget(Store, 'store_name'))