我按照adonis 文档创建了一个在我的控制器中进行更新的方法,它说:
save方法将实例持久化到数据库。此外,它巧妙地确定是创建一个新行还是更新现有行。
所以我试着这样做:
update ({ request, auth }){
let user = new User()
user.merge(request.all())
const user = await user.save()
return user
}因此,我在这个路径上发出了一个put请求,并收到了以下错误:
消息:“插入”用户“.”. "id“-重复的键值违反唯一约束”users_pkey“
我怎么能更新模型?在请求中,我传递我需要更新的id,但是Lucid认为这是一个插入.
发布于 2019-10-28 17:03:56
尝试删除const user =,因为您已经在此之上定义了两行用户。这可能导致不必要的功能。
发布于 2019-10-28 17:16:18
固定使用:
async update ({ request, auth }){
let user = await User.findOrFail(request.params.id)
user.merge(request.all())
await user.save()
return user
}https://stackoverflow.com/questions/58595120
复制相似问题