Не удалось найти авторизацию с 'id'=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, и авторизация имеет идентификатор 1 и вперед. Как решить это? Я перепробовал много вещей, но ничего не получилось =/

2 ответа

Решение

Ответ таков:

      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

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

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

 params[:authorization][:contract_ids].each do |id|
      Authorization.find(id).update_column(value_solve: params[:authorization][:value_solve])
 end
Другие вопросы по тегам