首页 > 解决方案 > 使用 Bookshelf.js 查询相关数据

问题描述

Bookshelf.js 是否提供通过相关模型查找模型的方法?

我已经创建了两个模型 Order 和 OrderStatus。现在,我想通过它的状态来获取一个 Order 模型。不幸的是,这种方法不再有效,因为 load 方法现在需要一个字符串或字符串数​​组。

const order = await new Order().load({"orderStatus": q => q.where({"userId": userId, "status": 10})});

我找到了一个名为“bookshelf-eloquent”的库,它添加了这个功能。但是,我使用的是 Typescript,这个库不提供任何类型声明。

此代码有效,但 TypeScript 指示该属性whereHas不存在。

const order = await new Order()
.whereHas("orderStatus", q => q.where({"userId": userId, "status": 10}))
.get()

要么 Bookshelf.js 开发人员添加了一个我还没有见过的新方法,要么我需要一个 bookshelf-eloquent 库的类型声明文件。否则,我无法使用它。

标签: node.jstypescriptmodelbookshelf.js

解决方案


推荐阅读