javascript - Knex,插入随机列
问题描述
我想做的是使用 knex 的 trx 将数据发布到我的数据库。当我尝试发送一个发布请求并使用以下代码处理它时,我收到此错误:
失败行包含 (4, null, , null, 2021-05-13 23:12:17.642)
我对 knex 没有太多经验,所以我不知道为什么在应该存在的三个值中有两个空值。我觉得这很简单,但我在网上找不到任何东西。
const handleAnnouncementCreation = (req, res, db) => {
const { body } = req.body;
db.transaction(trx => {
trx.insert({
body: body,
posted: new Date()
}).into('news_posts').returning('id').then(id => {
res.json(id);
}).then(trx.commit).catch(trx.rollback);
}).catch(err => res.status(400).json(err));
}
解决方案
问题是您正在尝试将一个Json
值(的值body
)分配到列中。
您应该使用JSON.stringify
身体值。
const handleAnnouncementCreation = (req, res, db) => {
const { body } = req.body;
db.transaction((trx) => {
trx
.insert({
body: JSON.stringify(body), // <--
posted: new Date(),
})
.into('news_posts')
.returning('id')
.then((id) => {
res.json(id);
})
.then(trx.commit)
.catch(trx.rollback);
}).catch((err) => res.status(400).json(err));
};
推荐阅读
- vue.js - 在 vue.js 中将数据从父级传递给子级
- python - 单个条件的 Python 条件列表
- javascript - 为什么找不到现有的 JavaScript 函数生成未捕获的 ReferenceError
- r - 在 R 中按统计显着性分组
- c# - 使用流畅 API 的 EF Core 3 聚集索引不起作用
- python - Pandas Dataframe 相关问题。获取语法错误
- machine-learning - 在 Pytorch 中部分从 state-dict 加载两个预训练模型的最佳方法是什么?
- ios - Swift编程TableView不显示单元格
- c++ - 使用循环将多行写入 .txt
- c# - 您如何使用 IComparable 到另一个类来实现具有泛型的接口?