我有一个Page模型,这个模型包含一个Slug字段。有可能得到节点的路径吗?(root/page1/sub1/)
我需要我的导航路径,查询看起来像:
$pages = Page::first()->getDescendants()->toHierarchy();
和结果:
<ul>
<li><a href="/root">root</a>
<ul>
<li><a href="/root/page1">page1</a>
<ul>
<li><a href="/root/page1/sub1">sub1</a></li>
<li><a href="/root/page1/sub2">sub2</a></li>
</ul>
</li>
<li><a href="/root/page2">page2</a>
<ul>
<li><a href="/root/page2/sub1">sub1</a></li>
<li><a href="/root/page2/sub2">sub2</a></li>
</ul>
</li>
<li><a href="/root/page3">page3</a></li>
</ul>
</li>
这给了您节点的路径:
SELECT ancestor.*
FROM category as child, category as ancestor
WHERE child.lft >= ancestor.lft AND child.lft <= ancestor.rgt
AND child.id = YOUR_CHILD_ID
ORDER BY ancestor.lft