私はこれをしたい:
<div class="menu">
<%- render_menu do |title,path,children| %>
<%= link_to title, path %>
<div class="submenu">
<%= render_menu(children) do |title,path,children| %>
<%= link_to title, path %>
<%= children %>
<%- end %>
</div>
<% end %>
</div>
メソッドrender_menu
は次のようになります。
def render_menu(children=nil)
children = Paths.roots if children.nil?
children.collect do |child|
[ child.title, child.path, child.children ]
end
end
3 つのパラメーターを取得するために何render_menu
を返す必要があるのか わかりrender_menu
ません。引数が指定されていない場合、デフォルトのメニュー項目が取得されます。