在新控制器中使用spree_application布局

时间:2013-04-22 01:29:22

标签: ruby-on-rails ruby spree

我正在尝试在我刚刚添加到我的狂欢应用程序的控制器中使用spree_application布局

class ShotsController < Spree::BaseController

  layout 'spree_application'

  def index
    @shots = Shot.all
  end

  def show
    @shot=Shot.find(params[:id])
  end   

end

但是当我想去shot_path时 我有一个错误:

NoMethodError in Shots#index

Showing /Users/me/.rvm/gems/ruby-1.9.3-p327/gems/spree_core-    1.3.2/app/views/spree/shared/_nav_bar.html.erb where line #14 raised:

undefined method `current_order' for #< ShotsController:0x007f9c6b746e40>

有人可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

好吧,弄清楚如何:

在application_controller.rb文件中包含Spree :: Core :: ControllerHelpers :: Order

答案 1 :(得分:0)

如果您希望您的控制器成为Spree核心的一部分,请尝试将其文件移至app/controllers/spree/并重写如下:

module Spree
  class ShotsController < ApplicationController
    layout 'spree_application'

    def index
      @shots = Shot.all
    end

    def show
      @shot=Shot.find(params[:id])
    end   
  end
end