2
我有一個表,用於存儲返回用戶列表的查詢。 然後我有一個方法「get_public」到一個「香蕉」模型,使用它們之間的邏輯AND執行多個查詢。獲取軌道ActiveRecord而不是多個查詢的對象數組
所以,當我做
Banana.find(x).get_public
我接收用戶的數組(適合於香蕉對象的那些)。
的get_public方法是這樣的:
def get_public
pb = []
banana_queries.each do |q|
pb << User.find_by_sql(q.query)
end
pb.inject(:'&')
end
但是,將是巨大的,如果我能得到的ActiveRecord ::關係來代替。我想這樣做後:Banana.find(x).get_public.where(...)
任何方式來修改get_public並實現這一點?
您是否嘗試過包括'的ActiveRecord :: QueryMethods'在你的類來獲得相關的查詢方法? – Bala
什麼是'pb.inject(:'&')'應該在這種情況下做,並且你測試了它的行爲? –
它是陣列之間的「邏輯與」。 –