如何从Ruby on Rails中的显示页面和索引页面访问方法

时间:2012-08-25 20:38:04

标签: ruby-on-rails ruby methods

在我的模型中,我有一个返回变量的方法。

def do_something(param1, param2)
  #code
  return variable
end

我从显示页面中的部分渲染中成功调用了此方法。像这样:

<%= @user.do_something(param1, param2) %>

我想从索引页面中呈现的部分方法调用相同的方法。但我遇到了错误。 编辑:类错误的未定义方法。

我可以将我的所有方法代码复制并粘贴到重复的方法中,如:

def self.do_something(param1, param2)
  #code
  return variable
end

并从索引页面调用它像这样......

<%= User.do_something(param1, param2) %>

......但这不是干,我知道那里可能有更合适的解决方案。我还在学习rails mechanics,所以感谢你的帮助。

1 个答案:

答案 0 :(得分:1)

至少你可以使用委托:

class User < ActiveRecord::Base
  def do_something param1, param2
    self.class.do_something param1, param2
  end

  def self.do_something param1, param2
    ...
    return variable
  end
end