node.js - 在 keystone.js 中使用“updatedBy”实体获取用户信息
问题描述
我正在尝试通过设置track: true
. 但是updatedBy
返回的是user id
. 我想将跟踪的用户数据推送到元素。在用户模型执行内部,它element.userDetials
正在工作,但没有将数据推送到元素。在用户模型之外作为undefined
.
view.on('init', function (next) {
var q = keystone.list('Post').paginate({
page: req.query.page || 1,
perPage: 5,
//maxPages: 10,
// filters: {
// state: 'published',
// },
})
.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;
locals.data.posts.results.forEach(function(element,index){
User.model.findById(element.updatedBy).exec(function(error,user){
element.userDetails = 'Dr. ' + user.name.first + user.name.last;
console.log(element.userDetails);
next(error);
});
});
next(err);
});
});
解决方案
推荐阅读
- php - Mpdf Kartik上的绝对位置不起作用
- java - Gradle 说我的 java 安装在错误的位置,尽管它找到了正确的文件夹
- docker - docker-compose 设置环境变量不起作用
- c# - xamarin 形式:绑定对象为空
- c# - 将玩家旋转更改为相机旋转
- javascript - 如果 iframe 存在,Javascript onclick,将其删除并创建新的 iframe?
- python - Python从正面展望中获取分组值
- python - 用python说话时将语音转换为文本
- wordpress - 打开我的网站时如何加载我自己的网站文件而不是 WordPress 网站
- r - 垂直对齐单元格以位于底部的柔性表