我正在编写一个名为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
中定义的帮助程序。我应该如何在我自己的引擎中声明这些助手?
答案 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 !!