django-import-export将列附加到导入的.xlsx

问题描述

我想在导入的excel表中追加一列,该列将包含模型的ForeignKey(所有行中都相同,此foreignKey是从与.xlsx相同的形式获得的),但是我不能让它起作用。如果我用列和ID上传Excel,则可以正常运行。这是我的代码: views.py

def article_import(request):  
  if request.method == 'POST':  
      provider_id = request.POST['provider_id']
      article_resource = ArticleResource()
      dataset = Dataset()
      nuevos_articulos = request.FILES['xlsfile']  
      data_to_import = dataset.load(nuevos_articulos.read())
      result = article_resource.import_data(dataset,dry_run=True,provider_id=provider_id) #Test data  
      if not result.has_errors():  
          article_resource.import_data(dataset,dry_run=False,provider_id=provider_id) #Import data
          return redirect('dash-articles')
      return redirect('/dashboard/articles/?error=True')
  else:
      providers = Provider.objects.all().order_by('razon_social')
      return render(request,'import/articles_import.html',{'providers': providers})  

resource.py

class ArticleResource(resources.ModelResource):

  class Meta:
      model = Article
      skip_unchanged = True
      report_skipped = False
      import_id_fields = ('codigo',)

  def before_import(self,dataset,using_transactions,dry_run,**kwargs):
      dataset.append_col([kwargs['provider_id'],],header='proveedor')
      print(dataset)
      return super().before_import(dataset,**kwargs)

“ before_import”中的代码是我正在测试的内容,但是我无法使“ append_col”功能生效。我会很感激您的帮助,如果有更好的解决方案,请告诉我,谢谢!!!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)