2

Web アプリケーションにRefinerycmsを利用しています。エンジンを作成し、PostsHelper というヘルパーを作成しました。私の見解でヘルパーを利用できるようにしたいのですが (明らかに)、うまくいきません。Refinery ブログのサンプル コードを調べたところ、コントローラーで次のようなコードが使用されています。

 helper :posts

ただし、このコードを Posts コントローラーに追加すると、次のエラーが発生します。

 LoadError in PostsController#index

 Missing helper file helpers/posts_helper.rb

これは私の投稿ヘルパーです:

 require 'nokogiri'

  module PostsHelper
def readMore(post)
    doc = Nokogiri::HTML(post.message)
    intro = doc.search("div[class='intro']")
    result = Nokogiri::XML::DocumentFragment.parse(intro)
    result << link_to("Read More", post_path(post))
    result.to_html
end     

したがって、最終的には、エンジンで「ヘルパーがビューを支援する」方法について混乱しています。

どんな助けにも感謝します。

4

1 に答える 1

3

答えは IRC Refinerycms チャンネルで提供されました。

パスに次を追加しました: vendor/engines/posts/lib/refinerycms-posts.rb

 config.to_prepare do
    ::ApplicationController.helper(PostsHelper)
  end
于 2012-01-06T01:37:45.767 に答える