使用has_and_belongs_to_many关系删除

时间:2013-06-05 04:55:42

标签: ruby-on-rails ruby-on-rails-3 activerecord

我有两个模型,Note和Group,有has_and_belongs_to_many关系。许多笔记可以在一个组中,一个笔记可以属于许多组。

如何删除仅属于一个组的所有笔记?

UPD:

谢谢,但我不想删除组中的所有笔记。我想删除只有一个组的备注。

3 个答案:

答案 0 :(得分:1)

实例化您的论坛,然后在协会上调用clear

@group.notes.clear

这是documentation

答案 1 :(得分:1)

请参阅以下有关销毁关联数据的stackoverflow问题和答案;另外还有一个插件可以保护你的一些关联不被破坏,我已经在rails 2.x上成功使用了这个插件但是还没有在rails 3.x上试过它。

Rails :dependent => :destroy VS :dependent => :delete_all

:protect plugin - > http://ruido-blanco.net/blog/rails-dependent-protect-plugin-english/

答案 2 :(得分:0)

你也可以尝试这个

@group.notes.destroy_all

OR

@group.notes.delete