我是 Adonis JS 的新手,对于这个愚蠢的问题感到非常抱歉。
我有 Adonis JS 的默认设置和 Mysql 数据库,一切正常。
我创建了一个简单的用户测试路由,其中返回 ID 为 1 的用户的 JSON。
下面是相同的代码
Route.get('/usertest', ({ response }) => {
const User = use('App/Models/User')
let data = User.query().where('id', 1)
.first()
console.log(data)
return response.status(200).json(data)
})
但它返回的是空对象
原始响应:
{}
控制台日志语句响应:
Promise { <pending> }
我无法理解我在这里错过了什么。
注意:我尝试了 let data = User.find(1)
但没有成功。
请帮助我。
提前致谢!!!
最佳答案
请注意,至少您必须异步执行查询。
我的意思是,你必须更换:
let data = User.query().where('id', 1)
.first()
作者:
let data = await User.query().where('id', 1)
.first()
当然,这意味着您必须在函数箭头之前加上async
:
Route.get('/usertest', async ({ response }) => {
// rest of the code
let data = await User.query().where('id', 1).first()
// rest of the code
})
关于javascript - Adonis Lucid ORM 不返回数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55077645/