![](/img/trans.png)
[英]How do I create Many-to-Many relations with custom field names in Bookshelf.js?
[英]Bookshelf.js: Saving or Updating many-to-many relationships
Bookshelf.js中Collections的attach
和updatePivot
方法似乎都作用于多对多关系,但是这些方法似乎都不保存或更新(更新)多对多关系项。 运行attach
我想更新记录(如果它们已存在)或保存它们(如果不存在)。 不幸的是,无论关系是否存在, attach
总是添加记录,这将导致重复的条目。 如果我使用updatePivot
,它似乎可以正确更新记录,但updatePivot
是它们存在。 如果我是第一次保存,并且使用updatePivot
,它将引发错误。 我想找出在Bookhelf.js中是否存在正确地增加多对多关系的方法或策略。 这是一个示例代码片段,可让您大致了解我的尝试。
qq.save().tap(q => q.choice_responses().attach(cleanQuestions[qq.id]));
qq.save().tap(q => q.choice_responses().updatePivot(cleanQuestions[qq.id]));
您可以尝试使用不带任何参数的detach()
方法先删除所有关系,然后再附加它们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.