Отсоединение ссылочной записи от отношения 1 ..N без ее удаления

#ruby-on-rails-3 #mongoid

#ruby-on-rails-3 #mongoid

Вопрос:

У меня есть отношение 1 .. N между двумя классами

 class A
  has_many: bees

class B
  belongs_to: a
  

Я могу без проблем добавлять экземпляры B в bees коллекцию.
Когда я пытаюсь удалить конкретный экземпляр B, выполнив

 a.bees.where( id: someid ).delete
  

затем a удаляется…

Также пробовал

    b.a.delete
  

с тем же результатом
Как мне просто удалить связь, оставив экземпляры нетронутыми?

Ответ №1:

Используйте метод nullify.

Комментарии:

1. должен ли я использовать ее с обеих сторон связи?

2. Если я правильно понимаю описание метода в приведенной выше ссылке, то он удаляет ссылку с обеих сторон. Разумеется, вы должны учесть это в своих тестах.