У меня есть многострочная форма с полями product_id
, quantity
, price
, address
. В форме могут быть определенные пользователем строки. Я хочу сгруппировать эти записи с помощью уникальных адресов.Группировка с помощью ключа в хеше
form_details=params
делает form_details
что-то вроде:
form_details = {
:product_id => [1,2,3,4,5],
:quantity => [10,20,30,40,6],
:price => [100,1000,200,30,2000],
:address =>[ 'x','y','z','x','y']
}
Я хочу, чтобы новый хэш, сгруппированных по каждому уникальному адресу. Таким образом, первый раз, когда я должен получить это:
result = {
:product_id => [1,4],
:quantity => [10,40],
:price => [100,30],
:address => ['x']
}
Во второй раз все детали должны быть сгруппированы по address=>'y'
, а затем третий и последний раз на address=>'z'
.
Каков наилучший способ для этого?
откуда «заказ» приходит? это 'order =>' или 'order ='? –
Просто возьмите его как новую переменную ... Результат должен храниться в порядке каждый раз. –
@MrYoshiji, пожалуйста, не изменяйте примеры кода в вопросе OP. Это считается плохой редакцией и требует откат. Только ОП должен изменить свой код. Сделать его читабельным - это одно, но не меняйте его содержание. –