Rails祖先treemenu帮助

时间:2010-12-12 08:08:02

标签: ruby-on-rails

我正在尝试用祖先制作一个简单的treelistmenu。

以下是我的代码,但无效:

<ul>
<% for cat_opg in CatOpg.roots %>
 <li> <%= cat_opg.navn %><li>
 <% for cat_opg in CatOpg.children %>
<li> <%= cat_opg.navn %><li>
</ul>
<% end %>
</ul>
<% end %>

我的控制器: def听 @cat_opg = CatOpg.find(:全部) 端

我想将这个simpel树菜单设为:

- 儿童

- 儿童

我不知道我做错了什么。 PS:我是铁轨初学者

2 个答案:

答案 0 :(得分:1)

首先,您要在视图中进行建模,而不是局部变量。
其次,你在改写变量。

应该是这样的:

<ul>
<% cat_opg.roots.each do |cat_opg_root| %>
 <li> <%= cat_opg_root.navn %><li>
 <% cat_opg_root.children each do |cat_opg_child| %>
  <li> <%= cat_opg_child.navn %><li>
  </ul>
 <% end %>
 </ul>
<% end %>

答案 1 :(得分:0)

Alex谢谢你的回答。

现在可行了

控制器:@cat_opg = CatOpg

观点:

<ul>
  <% @cat_opg.roots.each do |cat_opg_root| %>
    <li> <%= cat_opg_root.navn %></li>
      <% unless cat_opg_root.children.empty? %>
       <ul>
         <% cat_opg_root.children.each do |cat_opg_child| %>
           <li> <%= cat_opg_child.navn %></li>
         <% end %>
       </ul>
     <% end %>
  <% end %>
</ul>