如何引用在 bookshelf.js 中创建的记录?
How can I reference a record that has been created in bookshelf.js?
我正在尝试使用 bookshelf.js 更新记录。当我更新它时,我想引用它创建时的时间戳。我的代码如下所示:
router.patch('/session/:id', (req,res) => {
const time = new Date()
console.log(time.getTime())
Session
.forge({id: req.params.id})
.save({isTermed: true, duration: time.getTime() - Session.created_at})
.then((session) => {
res.json(session);
})
.catch((error) => {
console.error(error);
return res.sendStatus(500);
});
});
但是,我认为 Session.created_at 是未定义的,此外,这不是引用我正在寻找的会话的正确方法。那么,正确的方法是什么?此外,如果我能够让它工作,我会尝试将持续时间属性设置为当前时间 - 创建的时间,以分钟为单位。由于它们都只是时间戳,我如何将此值转换为分钟?谢谢!
您必须先获取您的模型,否则它不会包含您数据库中的任何数据:
router.patch('/session/:id', (req,res) => {
const time = new Date()
console.log(time.getTime())
Session
.forge({id: req.params.id})
.fetch()
.then((session) => {
return session.save({
isTermed: true,
duration: time.getTime() - session.created_at
})
})
.then((session) => {
res.json(session);
})
.catch((error) => {
console.error(error);
return res.sendStatus(500);
});
});
我正在尝试使用 bookshelf.js 更新记录。当我更新它时,我想引用它创建时的时间戳。我的代码如下所示:
router.patch('/session/:id', (req,res) => {
const time = new Date()
console.log(time.getTime())
Session
.forge({id: req.params.id})
.save({isTermed: true, duration: time.getTime() - Session.created_at})
.then((session) => {
res.json(session);
})
.catch((error) => {
console.error(error);
return res.sendStatus(500);
});
});
但是,我认为 Session.created_at 是未定义的,此外,这不是引用我正在寻找的会话的正确方法。那么,正确的方法是什么?此外,如果我能够让它工作,我会尝试将持续时间属性设置为当前时间 - 创建的时间,以分钟为单位。由于它们都只是时间戳,我如何将此值转换为分钟?谢谢!
您必须先获取您的模型,否则它不会包含您数据库中的任何数据:
router.patch('/session/:id', (req,res) => {
const time = new Date()
console.log(time.getTime())
Session
.forge({id: req.params.id})
.fetch()
.then((session) => {
return session.save({
isTermed: true,
duration: time.getTime() - session.created_at
})
})
.then((session) => {
res.json(session);
})
.catch((error) => {
console.error(error);
return res.sendStatus(500);
});
});