我目前有我的主页显示来自 MongoDB 的 6 个最古老的 Stories 帖子
我使用以下来自 Mongo 的查询:
var query = Story
.find({maxlines:10})
.sort({_id:1})
.limit(6);
然后我用它把信息传递给dust.js
app.get('/', function(req, res){
query.exec(function(err, story) {
if (err) console.log(err);
res.render('index', {
title: 'Test!',
storytitle1: story[0].title,
storylines1: story[0].lines,
storyid1: story[0].sid,
storyslug1: slugs(story[0].title),
storytitle2: story[1].title,
storylines2: story[1].lines,
storyid2: story[1].sid,
storyslug2: slugs(story[1].title),
storytitle3: story[2].title,
storylines3: story[2].lines,
storyid3: story[2].sid,
storyslug3: slugs(story[2].title),
storytitle4: story[3].title,
storylines4: story[3].lines,
storyid4: story[3].sid,
storyslug4: slugs(story[3].title),
storytitle5: story[4].title,
storylines5: story[4].lines,
storyid5: story[4].sid,
storyslug5: slugs(story[4].title),
storytitle6: story[5].title,
storylines6: story[5].lines,
storyid6: story[5].sid,
storyslug6: slugs(story[5].title)
});
});
});
然后我在 .dust 模板上有以下内容
<h1 class="title">{storytitle1}</h1>
{#storylines1}
<ul>{text}</ul>
{/storylines1}
<h1 class="title">{storytitle2}</h1>
{#storylines2}
<ul>{text}</ul>
{/storylines2}
基本上对于我单独渲染它们的 6 个,它工作得非常好,但我想知道是否有更好/更清洁的方法来做到这一点?因为我想实现另一个页面“/all/”,例如显示最后 20 个故事,我不想在模板中单独编写它们。