假设我有一个Mongoid模型,如下所示:
class Person
# stuff here
has_and_belongs_to_many :groups, :class_name => 'Group', :inverse_of => nil
end
我刚刚弃用了我的Group模型(完全摆脱了那个类),现在我想从我所有的Person模型中取消该关系。
最合适的方法是什么?我知道Mongoid提供了一种取消设置字段(https://coderwall.com/p/wcx4pq/mongoid-remove-unnecessary-properties-from-documents)的方法,所以我想必须有一种方法可以对关系做同样的事情,这样Person就不再有groups
或group_ids
了。
谢谢!
答案 0 :(得分:1)
您只需要为每个人对象取消设置group_ids
,如下所示:
Person.each { |person| person.unset(:group_ids) }
之后,您可以删除群组集合。