在视图轨道中访问应用程序控制

时间:2013-09-07 17:34:03

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

我在应用程序控制器中有一个动作

def is_customer_logged_in?
    !!session[:customer_id]
  end

在我看来,我试图像这样访问application_controller动作

<% unless is_customer_logged_in? %>
    some functions
<% end %>

以上代码是部分布局。

这是我正面对的错误消息

undefined method `is_customer_logged_in?' for #<#<Class:0xb51a5300>:0xb5616484>

2 个答案:

答案 0 :(得分:4)

您可以将其定义为辅助方法,并且您应该能够在视图中访问该方法。

# app/controllers/application_controller.rb

class ApplicationController < ActionController::Base

  def is_customer_logged_in?
    !!session[:customer_id]
  end

  helper_method :is_customer_logged_in?
end

答案 1 :(得分:0)

尝试helper_method: is_customer_logged_in?