已安装的gem无法从rails控制器加载

时间:2016-06-25 08:34:10

标签: ruby-on-rails rubygems

我第一次在轨道上涉及ruby并且在尝试从控制器加载gem时遇到了问题。

要安装gem,我将其添加到(source下方的顶部)Gemfile并运行bundle install。 gem显示为已安装且位于Gemfile.lock中。安装时,系统会提示我输入sudo密码,bundle show <gem>会在系统路径(/var/lib/gems)中显示该密码。

在控制器中(app/controllers/my_controller.rb),我要求如下:

class MyController < ApplicationController
  def index
     @somevar = dostuff
  end

  private

  def dostuff
     require 'some/lib'
     return "foo"
  end
end

当我访问该应用时,我收到以下错误:

cannot load such file -- some/lib

如果我将dostuff函数放入项目根目录中dostuff.rb并使用ruby dostuff.rb执行它,则可以正常加载gem。

我是否遗漏了有关如何在铁轨环境中加载宝石的信息,或者我是否错误地加载了宝石?

我已经阅读了这些类似的问题,但他们还没有解决问题:

Rails can't find installed gem - rbenv是唯一的解决方案吗?我想尝试使用系统gem。 Does Rails load all installed gems? - 我明确加载但失败了

0 个答案:

没有答案