Tôi đang tìm một cách dễ dàng/nhanh chóng để nhận được một mảng các id từ một mối quan hệ Active Record.Rails Active Record - Nhận mảng id từ mối quan hệ
Hiện nay tôi có:
product_ids = Product.select(:id).where(:colour => 'blue').all.map{|p|p.id}
Nhưng đó là lộn xộn và đòi hỏi một bản đồ ..
Something như thế này sẽ là mát:
product_ids = Product.where(:colour => 'blue').ids
Bất kỳ ý tưởng?
Cảm ơn :)
Pluck là giải pháp tốt nhất ở đây nhưng cũng giống như một btw: thay vì 'map {| p | p.id} 'bạn có thể viết' map (&: id) '. Điều này đúng cho tất cả các điều tra viên ('each',' any? ',' Select', 'reject', vv), và sẽ gọi biểu tượng trên mỗi đối tượng mà nó lặp lại. – jokklan
ồ vâng, tôi biết về 'map (&: id)' chỉ có một sự trống rỗng khi viết bài này: P – complistic
Đủ công bằng: P! Nhưng dù sao thì cũng tốt khi biết những người dùng khác đọc câu hỏi này :) – jokklan