0

ラジオボタンのリストを印刷するヘルパーメソッドを作成したいと思います。それを行うための明白な方法は、ヘルパーメソッドにビューファイルがレンダリングするためのhtmlコードの文字列を返すようにすることです。

しかし、それはきれいではありません。文字列の<li><li>に追加して、それを返します。

もちろん、 htmlの各行を順番に出力できれば、コードはより読みやすくなります。行を出力ストリームに印刷して、(サーバーコンソールではなく)自分のページに表示することはできますか?

(私はレール2.3.5を使用しています。)

4

1 に答える 1

1

ヘルパーメソッドでリストを作成するcontent_tagには、目的の要素とHTMLをレンダリングするブロック(radio_buttonヘルパーなど)を呼び出して渡してから、混乱全体を文字列に結合します(例:(エアコード)) 。

module SomeHelper
  def radio_button_list(things)
    things.collect do |thing|
      content_tag(:li) { radio_button(thing.foo, thing.bar, thing.baz) }
    end.join
  end
end
于 2010-11-18T00:23:48.777 に答える