node.js - 如何动态更新 jsonb 列
问题描述
举个例子,这是插入代码
exports.createPreference = async sid => {
const query = `INSERT INTO preference(sid,data) VALUES('${sid}', ' [{
"privacy": "public",
"collect_my_data": "false",
"share_my_location": "false",
"currency": "USD",
"theme": "light",
"language": "en",
"notification": "false"
}]'
)`;
const result = await db.query(query);
return result.rows[0]
};
这是更新代码
exports.updatePreference = async function(sid, preferences) {
const query = `
update preference set data = jsonb_set(data, '0', '"${preferences}"', false)
where sid = '${sid}' RETURNING data`;
const result = await db.query(query);
return result.rows[0];
};
我想用任何首选项参数更新数据列。它将是一个具有所有初始属性但值不同的对象,具体取决于用户所做的更改。
我已经尝试过它的方式,但它在我的邮递员中显示[Object Object]而不是对象的内容。
请问我该怎么做,我已经花了几个月的时间涉足它。
解决方案
推荐阅读
- angular - 如何修复 Angular 6 中的“Google Maps JavaScript API 错误:InvalidKeyMapError”错误?
- react-native - 无法连接 mapStateToProps 和 mapDispatchToProps
- scala - 我正在尝试将 Java 代码转换为 scala
- python - 无法将python程序转换为exe
- java - 后台任务慢,经常崩溃(App使用NewsAPI)
- python - 我正在尝试从 Python 3 中的 2D 列表转换 3D 列表
- python - 为什么 Python3 比 Python2 慢?
- python-xarray - 向 xarray 添加新坐标的优雅方式
- python - 如何将此 Keras 代码转换为 Chainer 代码?(LSTM 自动编码器)
- python - 从 json.loads 为 dict 设置默认值