Archive for February 1st, 2011

list_tag で Array をリストに展開

あったらいいのに、ということで作った。ApplicationHelper とかに入れればOK.
array がnilや空のときには ul そのものが出ないのがポイント。

  # ex:
  #  < %= list_tag(:ul, ["menu1", "menu2"], :class=>"menu") %>
  # => 
  def list_tag(wrapper, array, *opt)
    return if array.to_a == []
    content_tag(wrapper, *opt) do
      array.inject(""){|s,i|
        s < < content_tag(:li, i)
      }.html_safe
    end
  end