У меня есть 2 модели «пользователи» и «события», и я использовал has_many: through для определения отношения между многими пользователями и событиями.Каждый пользователь может принадлежать 0 или многим событиям, и каждое событие может иметь 0 или много пользователей, связанных с ним.
Я знаю, что когда у меня есть отношения has_many и own_to, я могу просто выполнить user.events.create (arg), и rails знает, что событие связано с данным пользователем.Однако, когда это много ко многим, как их связать?Как мне сказать, что пользователь X теперь принадлежит событию A, а пользователь Y принадлежит событию A, а пользователь X также принадлежит событию B. Тогда, кроме того, как бы я уничтожил это отношение, если бы захотел?
Поскольку нисобытие или пользователь принадлежит только одному пользователю / событию ... как бы я определил отношения после того, как экземпляр пользователя и экземпляр события уже созданы?
Итак ... я думаю, я спрашиваю, если этоработает:
@user = User.create(args)
@event = Event.create(args)
@user.events << @event
это автоматически связывает пользователя с событием, которое я только что добавил к пользователю?Кажется, это работает, но потом, когда я пытаюсь это сделать:
@user2 = User.create(args)
@user2.events << @event
, это, похоже, не связывает @ user2 с этим конкретным событием, но связывает событие с @ user2.Я сделал:
@event.users
и в списке был указан только @user ... но не @ user2.