Javascript upsertGraph基于与';不同的列更新行;id';

Javascript upsertGraph基于与';不同的列更新行;id';,javascript,node.js,objection.js,Javascript,Node.js,Objection.js,我有一个带有id和supplier\u id列的产品表 当我从供应商处获取产品时,如何根据供应商id而不是id更新行 现在upsertGraph只使用insert,因为不存在id属性 编辑 我从几个不同的供应商那里获取产品列表,其中包含id,name,price 我使用id、name、price和supplier\u id在数据库中存储产品 因此,我试图根据供应商id制作upsertGraphupdate/insert,根据供应商id而不是id更新产品 这可能吗?以前没有尝试过,但我认为您可以使

我有一个带有
id
supplier\u id
列的产品表

当我从供应商处获取产品时,如何根据供应商id而不是id更新行

现在
upsertGraph
只使用insert,因为不存在
id
属性

编辑

我从几个不同的供应商那里获取产品列表,其中包含
id
name
price

我使用
id
name
price
supplier\u id
在数据库中存储产品

因此,我试图根据供应商id制作
upsertGraph
update/insert,根据供应商id而不是id更新产品


这可能吗?

以前没有尝试过,但我认为您可以使用:


没有。

正如官方文件所述,使用
upsertGraph
是不可能实现您想要的

默认情况下,upsertGraph方法更新具有id的对象, 插入没有id的对象并删除所有没有id的对象 不在场。此功能可以通过以下方式进行多种修改: 提供UpsertGraphOptions对象作为第二个参数

参考:


它提到可以修改默认功能,但不可能基于不同于
id
的列修改搜索。

我在products表上与product_图像有一个hasManyRelation。当我尝试更改idColumn()以返回supplier_id时,它停止了正确插入关系。(product_images表中缺少product_id)能否提供一个示例,说明您希望如何根据
供应商id
进行更新?
class Supplier extends Model {
  static get idColumn() {
    return 'supplier_id';
  }
}