[英]Extract nested object of an object collection (products of location)
我有兩個模型: Product
和Location
。
class Location
has_many :products
end
class Product
belongs_to :location
end
當我使用地理編碼器gem時,可以使用近范圍鏡,它可以選擇特定地址周圍的每個位置。 就像是 :
@locations_near_paris = Location.near("Paris")
現在,我想使用@locations_near_paris集合收集巴黎附近的產品。 我怎樣才能做到這一點 ?
我做了以下事情,但是我覺得這不是一個好習慣……
close_locations.each do |l|
unless l.products.nil?
l.products.each do |p|
close_products << p
end
end
end
我不知道geocoder方法是否返回AR,但我們假設它不會。
location_ids = Location.near("Paris").collect do |location|
location.id
end
paris_products = Product.where(location_id: location_ids)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.