質問

私は現在、コミュニティエンジンを使用してコミュニティをdelevopingていますが、私はいくつかのモデルを追加する必要があります。

問題は、私はCEで使用されているヘルパー・メソッドを必要とするということですが、私は、サイトの新しいセクションにアクセスしようとすると、私は(下記のような)未定義のメソッドを取得します。

undefined method `logged_in?' for #<ActionView::Base:0x1048f3748>

LOGGED_IN?この方法は、ベンダー/プラグイン/ 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に宣言することができますか?

役に立ちましたか?

解決

あなたはあなたのファイルベンダー/プラグイン/ community_engine / init.rbを編集し、それをロードするには、この行を追加することができます:

ActionView::Base.send(:include, MyHelper)

とフォルダベンダー/プラグイン/ community_engine /ヘルパー

であなたをヘルパーに移動
module MyHelper
  def my_method_here
    ...
  end
end

・ホープこのヘルプ!

他のヒント

私が一緒に働いてきたことをほとんどのサイトでは、物理的にauthenticated_system.rb#{RAILS_ROOT}/libファイルをコピーして、それをチェックインします。

あなたがする必要がある場合は、

はそのようにあなたがメソッドをオーバーライドすることができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top