如何在视图中调用辅助方法

时间:2015-07-02 06:45:09

标签: ruby-on-rails

我的助手中有这段代码:

  def app_state(app)
    state = app.operator_apps.map(&:is_production)
    if state.include?(true) and state.include?(false)
      "Sandbox/Production"
    elsif state.include?(true)
      "Production"
    else
      "Sandbox"
    end
  end

在我看来,我已经这样做了:

<%= app.app_state %>

我收到以下错误:

  

ActionView :: Template :: Error(#的未定义方法`app_state'):

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:2)

除非在app_state模型中的某处定义了app方法,否则您所获得的错误将会持续存在。

尝试调用辅助方法,如下所示:

<%= app_state(app) %>

现在app对象作为app_state方法的参数传入,而不是在对象本身上调用的方法。

希望有所帮助!