【发布时间】:2018-07-22 05:42:28
【问题描述】:
Bookshelf.js 中 Collections 的 attach 和 updatePivot 方法似乎都作用于多对多关系,但它们似乎都不能保存或更新(更新插入)多对多关系项。运行attach 时,如果记录已经存在,我想更新它们,如果不存在,则保存它们。不幸的是,attach 总是添加记录,无论关系是否已经存在,这会导致重复条目。如果我使用updatePivot,它似乎可以正确更新记录,但前提是它们存在。如果我是第一次保存并使用updatePivot,则会引发错误。我想知道是否存在正确插入 Bookshelf.js 中的多对多关系的方法或策略。这是一个示例代码 sn-p 让您了解我的尝试。
qq.save().tap(q => q.choice_responses().attach(cleanQuestions[qq.id]));
qq.save().tap(q => q.choice_responses().updatePivot(cleanQuestions[qq.id]));
【问题讨论】:
标签: javascript node.js postgresql orm bookshelf.js