我正在尝试使用activerecord-import gem,我已经按照维基上的说明找到了一个T恤,但我得到了一个NoMethodError: undefined method 'import' for #<Class:0x8b009b0>。以下是我的代码(与wiki中的示例基本相同)
class ExampleCode
def self.testing
orders = []
10.times do |i|
orders << Order.new(:raw_data => "order #{i}")
end
Order.import orders
end
end我像这样调用这个方法:
ExampleCode.testing我已经在windows,linux上用sqlite数据库和mysql数据库试过了,还是没有成功。我确信我已经安装了这个宝石:
actionmailer (3.2.6, 3.2.3, 3.2.1, 3.2.0)
actionpack (3.2.6, 3.2.3, 3.2.1, 3.2.0)
activemodel (3.2.6, 3.2.3, 3.2.1, 3.2.0)
activerecord (3.2.6, 3.2.3, 3.2.1, 3.2.0)
activerecord-import (0.2.10)
activerecord-oracle_enhanced-adapter (1.4.1)
activerecord-sqlserver-adapter (3.2.1)....我甚至尝试使用require (在安装gem时,这不应该是必需的。我没有在其他地方看到过这个,所以我恐怕我一定错过了一些非常明显的东西
发布于 2012-08-30 07:56:34
你将不得不导入active_record和活动记录-导入
即
require active_record
require activerecord-import(正如维基中提到的)
原因是,除非您显式地导入这些库,否则ruby不会知道它。对于rails项目,rails会为您导入Gemfile中提到的所有gem。
发布于 2022-02-09 22:46:48
我遇到了同样的事情;结果发现,至少对我来说,gem包含在gemfile的测试块中。请确保当您包含它时,它不仅仅局限于gem文件中的一个应用程序环境。
https://stackoverflow.com/questions/12187813
复制相似问题