从Spree_frontend访问帮助程序

时间:2013-10-21 15:27:26

标签: ruby helper spree

我正在编写一个名为customize的引擎,该引擎与Spree_frontend一起使用。我想要做的是使用商店布局显示商店页面。

我在我的引擎中创建了一个模型element,它的控制器和一组视图,只是常规方式: 在@engine/app/controllers/customize/element_controller.rb

class Customize::ElementController < ApplicationController
  layout: Spree::Config.layout

  <my code>
end

当我运行应用程序时,我收到错误,因为我的引擎customize找不到spree_frontend中定义的帮助程序。我应该如何在我自己的引擎中声明这些助手?

1 个答案:

答案 0 :(得分:2)

Ryan Bigg在Google网上论坛上回答了我的问题,请参阅https://groups.google.com/forum/#!topic/spree-user/JhsxcT648Cg。我在这里引用他的答案:

  

通过使用“include”,您可以包含指定的方法   模块进入该控制器。 BaseHelper的方法会   因此只能在控制器中使用,而不能作为帮助者   视图中的方法。

     

我相信你想要做的是:

     

包括Spree :: Core :: ControllerHelpers helper Spree :: BaseHelper

     

辅助方法将使该模块中的方法可用   控制器所在行的视图。

     Ryan Bigg   社区管理员   Spree Commerce,Inc。

非常感谢,Ryan !!