首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >activerecord-import gem导入:未定义的方法‘NoMethodError’

activerecord-import gem导入:未定义的方法‘NoMethodError’
EN

Stack Overflow用户
提问于 2012-08-30 07:18:48
回答 2查看 4.1K关注 0票数 7

我正在尝试使用activerecord-import gem,我已经按照维基上的说明找到了一个T恤,但我得到了一个NoMethodError: undefined method 'import' for #<Class:0x8b009b0>。以下是我的代码(与wiki中的示例基本相同)

代码语言:javascript
复制
    class ExampleCode
      def self.testing
        orders = []
        10.times do |i|
          orders << Order.new(:raw_data => "order #{i}")
        end

        Order.import orders

      end
    end

我像这样调用这个方法:

代码语言:javascript
复制
ExampleCode.testing

我已经在windows,linux上用sqlite数据库和mysql数据库试过了,还是没有成功。我确信我已经安装了这个宝石:

代码语言:javascript
复制
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时,这不应该是必需的。我没有在其他地方看到过这个,所以我恐怕我一定错过了一些非常明显的东西

EN

回答 2

Stack Overflow用户

发布于 2012-08-30 07:56:34

你将不得不导入active_record和活动记录-导入

代码语言:javascript
复制
require active_record
require activerecord-import

(正如维基中提到的)

原因是,除非您显式地导入这些库,否则ruby不会知道它。对于rails项目,rails会为您导入Gemfile中提到的所有gem。

票数 3
EN

Stack Overflow用户

发布于 2022-02-09 22:46:48

我遇到了同样的事情;结果发现,至少对我来说,gem包含在gemfile的测试块中。请确保当您包含它时,它不仅仅局限于gem文件中的一个应用程序环境。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12187813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档