2016-04-14 9 views
0

У меня есть эта ошибка, и это мой код:Не удалось найти Авторизация с «ид» = 0 с помощью each_with_index

params[:authorization][:contract_ids].each_with_index do |index, id| 
     Authorization.find(id).update_column(value_solve: params[:authorization][:value_solve]) 
    end 

Это началось с 0, и авторизация имеют ID 1 и вперед. Как решить это? Я пробовал много вещей, но ничего не сработал =/

ответ

0

Ответ это:

 auth_params = params[:authorization] 
auth_params[:contract_number].zip(auth_params[:value_solve].reject(&:blank?)).each do |contract_number, value_solve| 
      Authorization.where(contract_number: contract_number).update_all(value_solve: value_solve, situation: 2) 
     end 

: D

0

Я вижу, вы даже не используете index, просто идите прямо с петлей .each.

Попробуйте это:

params[:authorization][:contract_ids].each do |id| 
     Authorization.find(id).update_column(value_solve: params[:authorization][:value_solve]) 
end 
+0

не решают ... =/другая ошибка: Не удалось найти Авторизация с 'id' = 010101 << это мой номер контракта_ –

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

  • Нет связанных вопросов^_^