好的,所以我有这个循环
def page_children(page)
content_tag :li do
link_to page.url, "/#{page.url_path}/#{page.url}"
if page.children.any?
content_tag :ul do
page_children(page)
end
end
end
end
我不断得到stack level too deep
我将这个gem用于我的树结构,我的模型和 haml 如下
class Page < ActiveRecord::Base
acts_as_tree :order => 'sort_order'
belongs_to :parent, :class_name => "Page"
scope :parent_nav, lambda{ |navigation| where(:parent_id => nil, :is_home => 0, :nav => navigation).order("sort_order") }
end
我的haml如下
%ul
- Page.parent_nav("Attend").each do |page|
= page_children(page)
基本上我想要每个页面都有一个 li,如果页面有孩子,那么我想要另一个 ul,所有孩子都有一个 li ......