2014-09-16 4 views
0

Оператор определяетИзвлечение минимального из массива записей

<% @groups_for_unit = @groups.select{ |i| i.typeunit_id == unit.id } %> 

, чтобы иметь возможность представить массив с помощью typeunit_id

Однако этот массив в большей набор данных должен иметь минимальное значение извлеченную форму, которую она ,

<%= @groups_for_unit %> 

делает массив, но следующий дает неопределенный метод для количества для массива Error

<%= @groups_for_unit.quantity.map(&:to_i).min %> 

Что такое правильный синтаксис для достижения результата?

+0

Вы, вероятно, нужно '<% = @groups_for_unit. map {| g | g.quantity.to_i} .min%> ' – Santhosh

ответ

2

Вы можете использовать min_by, чтобы найти группу с наименьшим количеством:

min_group = @groups_for_unit.min_by { |x| x.quantity.to_i } 

Или map и min найти наименьшее количество:

min_quantity = @groups_for_unit.map { |x| x.quantity.to_i }.min 
+0

это генерирует значение, но я не могу показать его в представлении ... – Jerome

+0

Что вы имеете в виду *« Я не могу показать его в представлении »*? – Stefan

+0

выходит как таковой «Группа: 0x000001089ecc40» – Jerome

Смежные вопросы