我目前正在使用社区引擎取消社区,但我需要添加一些模型。
问题是我需要CE使用的帮助器方法,但是当我尝试访问站点的新部分时,我得到一个未定义的方法(如下所示)
undefined method `logged_in?' for #<ActionView::Base:0x1048f3748>
logged_in?方法在vendor / plugins / community_engine / lib / authenticated_system.rb
这些方法被定义为这样的辅助方法:
# this is at vendor/plugins/community_engine/lib/authenticated_system.rb
def self.included(base)
base.send :helper_method, :current_user, :current_user_session, :logged_in?, :admin?, :moderator?
end
如何让我的rails应用程序加载我的插件的lib中声明的所有助手和方法?
答案 0 :(得分:2)
您可以编辑文件vendor / plugins / community_engine / init.rb并添加此行以加载它:
ActionView::Base.send(:include, MyHelper)
并在您的文件夹vendor / plugins / community_engine / helpers
中移动帮助程序module MyHelper
def my_method_here
...
end
end
希望这有帮助!
答案 1 :(得分:0)
我使用的大部分网站都将authenticated_system.rb
文件复制到#{RAILS_ROOT}/lib
并将其签入。
如果需要,可以覆盖这些方法。