微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决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 举报,一经查实,本站将立刻删除。