在rails app中访问gem类方法

时间:2016-01-25 15:36:16

标签: ruby-on-rails ruby ruby-on-rails-3

我创造了自己的宝石' mygem'。在lib目录中,我有mygem.rb ruby​​文件。此文件定义了3个方法。

现在我已经创建了一个rails应用程序,我打算在这个应用程序中使用我的gem。在控制器ruby文件中,我想创建一个对象并使用我的gem方法。但它给了我错误。

以下是我的控制器ruby文件的代码: -

class StaticPagesController < ApplicationController
  obj= Newgem.new()    

  def home
    @message1 = obj.head
    @message2 = obj.paraone
    @message3 = obj.paratwo
  end  
end 

1 个答案:

答案 0 :(得分:0)

局部变量(没有@符号的变量)不会从类范围到方法内部。我不清楚你想要做什么,但你也许可以在before_filter中做到这一点,如下:

class StaticPagesController < ApplicationController
  before_filter :create_newgem

  def home
    @message1 = @obj.head
    @message2 = @obj.paraone
    @message3 = @obj.paratwo
  end  

protected
  def create_newgem
    @obj = Newgem.new()  
  end
end