2015-09-25 54 views
1

我必须将数据加载到Spree应用程序中。 Spree使用Rails引擎。如何在轨道环境中运行kiba etl?

所有示例都使用漂亮打印或CSV目标,但我想在目标中使用大型模型,例如。 SpreeModel.create!(row)

我试着做rails runner "exec('kiba db/etl/convert-csv.etl')",但我得到这个错误:

db/etl/convert-csv.etl:4:in `parse': uninitialized constant Kiba::Context::Spree (NameError) 

我也Rails的控制台中尝试过,但没有成功。

+0

由于错误提示,您是否初始化了Kiba? I.e:你是否安装了宝石,并在代码中要求它 – Waclock

回答

1

吉巴的作者在这里。感谢您使用它:-)

因为这真的看起来像一个潜在的经常被问到的问题,我写了一个完整的博客文章为您提供2个可能的答案:

How to run Kiba in a Rails environment

让我知道这的确作品为你!

+0

感谢您在博客文章中记录良好的答案。 如果我以前读过,它会为我在[Kiba :: Cli](https://github.com/thbar/kiba/blob/master/lib/kiba/cli.rb)找到解决方案几个小时而节省。尽管如此,它已经帮助我学习一些耙子,良好的缺乏让我;-) 伟大的工作!保持。 – mardocp

+0

对不起,你花了几个小时,真的!下次请不要犹豫,在SO上创建一个问题(总是用kiba-etl标记,这样我会得到正确的通知!),如果您遇到阻塞问题。 [自述文件](https://github.com/thbar/kiba#how-do-you-run-your-etl-jobs)中的程序化调用有点隐蔽,无论如何,你会错过“环境”招。我很感谢你发布了这个问题,所以现在已经有适当的文档记录,并帮助其他人! –

+0

我与这个错误有相同的问题/Users/rbennacer/projects/kaboom/mop2/config/environments/development.rb:1:in'':未初始化的常量Rails(NameError) – fenec