教材https://fullstack.xinshengdaxue.com/posts/416
controller里面的method不能在view里面直接使用

app/views/common/_navbar.html.erb
  <li>
     <%= link_to "#" do  %>
        购物车 <i class="fa fa-shopping-cart"> </i> ( <%= current_cart.products.count %> )
     <% end %>
  </li>  

在 view 里面,我们可以透过 current_cart.products.count 拿到购物车内的物品数量。
但是 current_cart 其实原本是 applications_controller 内的 method,我们为了要在 view 里面要可以存取它。
所以,我们得在 applications_controller.rb 宣告他是 helper_method,才能直接存取。

app/controller/applications_controller.rb
class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception

  def admin_required
    if !current_user.admin?
      redirect_to "/", alert: "You are not admin."
    end
  end

  helper_method :current_cart    

  def current_cart
    @current_cart ||= find_cart
  end  

参考资料
http://blog.xdite.net/posts/2014/06/16/helper-method-and-view-context