如何使用 Knex 获取与我正在查询的 table 相关的行
How to fetch rows related to the table I'm querying using Knex
我的程序遇到问题。如果您能提供解决方案或向我介绍正确的来源,那就太好了。
我将用一个例子来解释我的问题。
假设我想从我的数据库中获取 post,结果如下所示:
{
"id": 1,
"name": "Post 1",
"author_id": 1
}
我的目标是在结果中包含作者的详细信息。所以响应看起来像这样:
{
"id": 1,
"name": "Post 1",
"author": {
"id": 1,
"name": "Danny DeVito"
}
}
我目前可以使用我使用事务编写的一些代码来实现这一点。有没有办法用内部 Knex 函数来做到这一点?如果是,请提供示例。如果不是,事务是最有效的方式吗?
遗憾的是我发现了以下内容:
Short answer: No.
With Knex, you can retrieve data the same as with SQL, which is record
based, not object based
然而,经过一番挖掘,我发现了一个可以实现类似于 Laravel 的预加载功能的包。它叫做 Objection.js,它允许我保留我的 Knex.js 迁移
我的程序遇到问题。如果您能提供解决方案或向我介绍正确的来源,那就太好了。
我将用一个例子来解释我的问题。
假设我想从我的数据库中获取 post,结果如下所示:
{
"id": 1,
"name": "Post 1",
"author_id": 1
}
我的目标是在结果中包含作者的详细信息。所以响应看起来像这样:
{
"id": 1,
"name": "Post 1",
"author": {
"id": 1,
"name": "Danny DeVito"
}
}
我目前可以使用我使用事务编写的一些代码来实现这一点。有没有办法用内部 Knex 函数来做到这一点?如果是,请提供示例。如果不是,事务是最有效的方式吗?
遗憾的是我发现了以下内容:
Short answer: No.
With Knex, you can retrieve data the same as with SQL, which is record based, not object based
然而,经过一番挖掘,我发现了一个可以实现类似于 Laravel 的预加载功能的包。它叫做 Objection.js,它允许我保留我的 Knex.js 迁移