【问题标题】:Rails seems unable to find some gemsRails 似乎无法找到一些宝石
【发布时间】:2012-11-29 11:33:35
【问题描述】:

昨天,一切正常。可以看我之前的 Gemfile here

然后,我添加了一些群组,如您所见here

从那时起,我收到了这条消息:

Exiting
/Users/adrien/code/adserver/backoffice/config/initializers/airbrake.rb:1:in `<top (required)>': uninitialized constant Airbrake (NameError)

[AirbrakeFullStackTrace]

由于我无法弄清楚为什么会遇到这种行为并被卡住,因此我尝试在相应的 initializer 中要求 airbrake。我重新启动了服务器并收到了消息:

Exiting
/Users/adrien/code/adserver/backoffice/config/initializers/devise.rb:4:in `<top (required)>': uninitialized constant Devise (NameError)

[DeviseFullStackTrace]

与 Airbrake 的错误一样,我在初始化文件中需要 devise 并重新启动了服务器。我得到了这个:

Exiting
/Users/adrien/.rvm/gems/ruby-1.9.3-p194/gems/activerecord-3.2.8/lib/active_record/dynamic_matchers.rb:50:in `method_missing': undefined local variable or method `acts_as_sane_tree' for #<Class:0x007fd3363593f8> (NameError)

[ActsAsSaneTreeFullStackTrace]

我在我的模型文件中需要acs_as_sane_tree,重新启动了服务器,现在,它可以工作了。

谁能告诉我我做错了什么?

【问题讨论】:

    标签: ruby-on-rails ruby gem gemfile


    【解决方案1】:

    抱歉让大家感到无聊。我刚得到它。对于那些在 Gemfile 中与组一起玩的人来说,这是要知道和记住的事情。

    config/application.rb,可以找到如下指令:

    Bundler.require *Rails.groups(:assets) if defined?(Bundler)
    

    您必须告诉 Bundler 将您添加到 Gemfile 中的任何外来组包括在内。所以,就我而言,这给了我们:

    Bundler.require *Rails.groups(:assets, :rails, :frontoffice) if defined?(Bundler)
    

    在 Bundler 网站Using Groups 上找到了一些帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-19
      • 1970-01-01
      • 2013-01-05
      • 1970-01-01
      • 2014-05-03
      • 2015-05-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多