-1

Извините за общий заголовок, но я не уверен, как правильно это сформулировать на данный момент. У меня, наконец, было время, чтобы снова начать собирать рельсы и наткнулся на этот вопрос, когда я строил свои модели:Вложенные ресурсы rails имеет и принадлежит многим

По существу у меня есть родительский ресурс с двумя вложенными ресурсами. Родитель может иметь много из каждого дочернего ресурса, и каждый дочерний ресурс может иметь одного родителя. Эта часть работает нормально. Трудность возникает, когда я хочу иметь отношения has_and_belongs_to_many между двумя дочерними ресурсами. Я не уверен, как реализовать это, так что, когда я создаю новый Child 1, я могу связать его с несколькими существующими дочерними 2.

Представьте себе, что у меня есть модели пользователей, собак и прогулок. Пользователь является родителем, но каждая собака будет ходить на многих прогулках, и каждая прогулка может содержать много собак.

Я искал любые учебники для этой части и не имел большой удачи. Может ли кто-нибудь указать мне в сторону потенциального решения?

+0

это много для многих отношений, и для этого ypu может использовать либо has_many through, либо has_and_belongs_to_many –

+0

Да, я пытаюсь использовать has_and_belongs_to_many для этого, но я пытаюсь решить, как создавать новые экземпляры прогулок, учитывая, что обе собаки и прогулки принадлежат пользователю. Также как это будет выглядеть для пользователя в новой форме ходьбы? Как я могу дать пользователю возможность добавить нескольких собак на прогулку и т. Д. – skeletalbassman

ответ

0

dog.rb

has_and_belongs_to_many :walks 

walk.rb

has_and_belongs_to_many :dogs 

Создание объекта:

@walk = Walk.last 
@dog = Dog.last 
@walk.dogs << @dog 

Для этой ассоциации, вы будете иметь объединение таблицу dogs_walks, победивших У меня есть модель и будут иметь атрибуты как dog_id, walk_id, и у нее не будет идентификатора в качестве первичного ключа

+0

Спасибо, что последняя строка - это то, что мне нужно. Последнее последнее: Как я могу заполнить форму для вызова этой последней строки? Например, я хочу, чтобы пользователь решил, какой dog_id назначить данному walk_id. Как я могу поместить это в форму? – skeletalbassman