gpt4 book ai didi

ruby - 结构导航 : sort pages by category

转载 作者:太空宇宙 更新时间:2023-11-03 16:05:39 24 4
gpt4 key购买 nike

我要打印的是 liul,每个都包含具有给定标签(在元数据中设置)的所有页面

如果不熟悉 Awestruct,它类似于 Jekyll,页面元数据可以作为 page.property 访问,页面位于 site 对象中,可以迭代使用 site.pages.each

我想要实现的是这样的:

Category
Page
Page
Category
Page
Page

这是我目前所拥有的,我只能打印页面标题。

- site.pages.each do |page|
%li
%a{ :href => page.url}= page.title

有没有我缺少的简单解决方案?

最佳答案

如果我理解你想要的东西,像这样的东西应该可以工作:

%ul
-site.pages.group_by(&:category).each do |category, pages|
%li
= category
%ul
-pages.each do |page|
%li
%a{href: page.url}= page.title

这使用 group_by创建以类别属性为键的页面数组的散列,并生成每个页面中所有页面的嵌套列表。

这将包括所有 页面,包括没有类别的页面,因此您可能希望首先使用 reject 过滤页面数组:

-site.pages.reject{|p| p.category.nil?}.group_by(&:category).each do |category, pages|
...

关于ruby - 结构导航 : sort pages by category,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14450699/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com