node.js - 第三级包括续集
问题描述
目前我正在尝试为每个用户显示他们喜欢的帖子,并且对于我想使用上述方法将图像显示为 url 和 thumbnailurl 的帖子。
我遵循与之前的问题相同的步骤,并不断收到错误无法读取属性映射。
router.get("/likes", auth, (req, res) => {
let { id } = req.user;
User.findByPk(id, {
include:[{model:Likes,
include: [
{
model: Post,
include: [
{ model: Post_Image, attributes: ["id", "images"]},
],
},
],
}],
}).then((user) => {
if (!user)
return res.status(404).send();
const baseUrl = config.get("assetsBaseUrl");
const plainUser = user.get({ plain: true });
const resultLikes = [];
for (const like of plainUser.Likes) {
const { Post_Images, ...postAttributes } = like;
const IMAGES = Post_Images.map((postImage) => ({
url: `${baseUrl}${postImage.images}_full.jpg`,
thumbnailUrl: `${baseUrl}${postImage.images}_thumb.jpg`,
}));
resultLikes.push({ ...postAttributes, images: IMAGES });
}
res.send(resultLikes);
});
});
解决方案
您错过了一级包含的模型:Post
。您正在尝试从Like
.
for (const like of plainUser.Likes) {
const { Post_Images, ...postAttributes } = like.Post;
const IMAGES = Post_Images.map((postImage) => ({
url: `${baseUrl}${postImage.images}_full.jpg`,
thumbnailUrl: `${baseUrl}${postImage.images}_thumb.jpg`,
}));
resultLikes.push({ ...postAttributes, images: IMAGES });
}
推荐阅读
- python-3.x - PyQt5 - 如何删除放置在 Tab 小部件周围的默认空字段?
- python - 蟒蛇 | Tkinter:将多个不同的对象移动到一起
- javascript - 是否有打包 Javascript GUI 控件的标准方法?
- typescript - TypeScript 使用枚举类型而不是字符串类型迭代字符串枚举
- lightweight-charts - Tradingview轻量级图表获取事件
- python - 从 pyimagej 访问 FileSaver
- spring-boot - StreamingResponseBodyReturnValueHandler 不使用 applicationTaskExecutor
- .net-core - 记录 .NET Core 中用例的执行流程
- angular - 如何为仅在模板“无法读取未定义的属性'管道'”上使用的可观察变量编写开玩笑的单元测试?
- apache - Httpd 服务无法在 Cpanle/WHM 中启动和取消屏蔽