gpt4 book ai didi

node.js - 如果包含在 sequelize 中找不到任何关系数据,则设置属性的空值

转载 作者:行者123 更新时间:2023-12-03 22:33:07 27 4
gpt4 key购买 nike

我试图找出一本书可以有多个横幅的书。
所以我在找书的时候应用了很多横幅的关系。
它工作正常,但如果书籍没有任何横幅,我希望响应有所不同。

Book.findAll({
order: [
['updated_at', 'ASC']
],
attributes: {
exclude: ["thumbnail", "listenTime", "created_at", "today_book_day"],
},
include: [{
model: banner,
as: 'banners',
attributes: [
[banner_attribute, 'url']
],
where: whereAttribute,
required: false
}
]
}).then(books => {
var totalPage = 1;
if (totalBooks){
totalPage = Math.ceil(totalBooks / pagesize);
}
var metaInfo = {
currentPage: parseInt(page),
totalPage: totalPage,
pagesize: pagesize
};
var output = {
'meta': metaInfo,
"data": books,
"status": 200
};
res.send(output);
});
得到如下响应:
{
"meta": {
"currentPage": 1,
"totalPage": 3,
"pagesize": 100
},
"data": [
{
"id": 114,
"rating": "5.00",
"like": -1,
"comment": 0,
"listen": 49,
"category": "[]",
"order": 9,
"updated_at": 1589475237,
"thumbnailUrl": null,
"banners": []
},
"status": 200
]
}
但我想要像下面这样的 JSON 响应:
{
"meta": {
"currentPage": 1,
"totalPage": 3,
"pagesize": 100
},
"data": [
{
"id": 114,
"rating": "5.00",
"like": -1,
"comment": 0,
"listen": 49,
"category": "[]",
"order": 9,
"updated_at": 1589475237,
"thumbnailUrl": null,
"banners": [
{
"url" : null
}
],
},
"status": 200
]
}

最佳答案

这是无效的 JSON

"banners": [url" : null] // table of... what?
我想你想要这样的东西?
"banners": [ {"url" : null} ] // table with one object, which has key 'url' and value 'null'
但是如果横幅数组为空,那么您可以得出 url 为空的结论。您不需要明确地放置这些信息。

关于node.js - 如果包含在 sequelize 中找不到任何关系数据,则设置属性的空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64855960/

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