我有一个包含id
和supplier_id
列的产品表。
从供应商处获取产品时,如何基于upsertGraph
而不是supplier_id
来id
更新行?
现在upsertGraph
仅使用插入,因为不存在id
属性。
编辑
我从包括id
,name
,price
的几个不同供应商处获取了产品列表
我使用id
,name
,price
和supplier_id
因此,我正在尝试基于Supplier_id进行upsertGraph
更新/插入,以基于Supplier_id而不是id来更新产品。
这可能吗?
答案 0 :(得分:0)
没有尝试过,但是我认为您可以使用idColumn:
class Supplier extends Model {
static get idColumn() {
return 'supplier_id';
}
}
答案 1 :(得分:0)
否。
根据官方文档的说明,upsertGraph
不可能满足您的要求
默认情况下,upsertGraph方法更新具有ID的对象, 插入没有ID的对象,并删除所有 不存在。可以通过以下多种方式修改此功能: 提供UpsertGraphOptions对象作为第二个参数。
REF:https://vincit.github.io/objection.js/guide/query-examples.html#graph-upserts
它提到可以修改默认功能,但是不能基于与id
不同的列来修改搜索。