У меня есть следующие ассоциации:Выбор has_many с has_many
class User
has_many :orders
has_many :events
end
class Event
belongs_to :user
has_many :orders
end
class Order
belongs_to :event
end
Моя проблема заключается в том, что при выполнении User.last.events.orders я ничего не получаю, в то время как User.last.events.last.orders в результате с (последний - это то, что я выбрал для его проверки)
В чем проблема?
Имейте в виду, что пользователь имеет порядок, но пользователи, у которых есть событие, могут иметь заказы от других пользователей ...
вот что я пытаюсь получить здесь.
Спасибо!
'user.events.flat_map (&: orders) .uniq' получит все заказы, связанные с этим пользователем (' array.flat_map (&: orders) 'вызывает метод' orders' для каждого элемента 'array') - это может быть медленным для выполнения этой команды, в зависимости от количества отсчетов и количества заказов. – MrYoshiji