У меня такой тип поиска:
values = ModelName.find(:all, :conditions => ['attr_id IN (SELECT attr_id FROM srv_type_attr WHERE id IN (?))', serv_objt_attr.collect(&:stya_id)])
Ведьма возвращает мне массив необходимых значений:
[33458, 33438]
Далее мне нужно проверить, существует ли запись с select
:
serv_objt_attr.select {|array| array.stya_id == values.collect(&:attr_id).uniq}
Это пример того, о чем я размышляю.
Итак, как это сделать с помощью select, чтобы он просматривал все значения, которые я получаю values
.
Я знаю, что мог бы что-то вроде
values.collect(&:attr_id).uniq do |val|
serv_objt_attr.select {|array| array.stya_id == val}
end
Но я не думаю, что это хороший вариант.
Ruby 1.8.7 Рельсы 2.3.4