【问题标题】:Filtering Posts by User Object Id or Author in Keystone在 Keystone 中按用户对象 ID 或作者过滤帖子
【发布时间】:2017-03-29 17:50:43
【问题描述】:
我正在尝试创建一个网络应用程序,学生可以在其中在线存储他们的笔记。因此,如果他们登录,他们只能看到他们在博客上发布的注释。
view.on('init', function (next) {
Post.model.findOne()
.where('_id', User.id)
.populate('author')
.exec(function(err, results) {
locals.data.posts = results;
});
});
这是我遇到问题的代码
【问题讨论】:
标签:
javascript
node.js
keystonejs
【解决方案1】:
view.on('init', function (next) {
var q = keystone.list('Post').paginate({
page: req.query.page || 1,
perPage: 10,
maxPages: 10,
})
.find().where('author', locals.user.id)
.sort('-publishedDate')
.populate('author categories');
if (locals.data.category) {
q.where('categories').in([locals.data.category]);
}
q.exec(function (err, results) {
locals.data.posts = results;
next(err);
});
});
这行得通!