Я отправляю данные JSON контроллеру, который анализирует его.Ruby on Rails не может преобразовать String в Integer
ROR Код
Class.where(challenge_id:challenge.id,song_id:song_hash['song_id']).first
Ошибкаявляется
can't convert String into Integer
Я даже изменить song_id:song_hash['song_id']
к song_id:song_hash['song_id'].to_i
, но он не работает
Hash DATA является
{"session_token"=>"Xt9toEzHI3bYXeJNkenyqg", "challenge"=>{"challenge_id"=>"15", "player_name"=>"usman", "guessed_songs"=>{"0"=>{"song_id"=>"10", "guessed"=>"YES"}, "1"=>{"song_id"=>"11", "guessed"=>"YES"}, "2"=>{"song_id"=>"12", "guessed"=>"YES"}, "3"=>{"song_id"=>"13", "guessed"=>"YES"}, "4"=>{"song_id"=>"15", "guessed"=>"YES"}}, "player_status"=>{"0"=>{"coins"=>"20", "points"=>"0", "player_name"=>"usman"}, "1"=>{"coins"=>"20", "points"=>"0", "player_name"=>"Usman"}}}}
Не удалось найти то, что не преобразовать в целое
ДАННЫЕ JSON, которые вы предоставили, вовсе не 'json'. '{" song_id ": q1," догадались ":" YES "}' не 'json'. {"song_id": "q1", "guess": "YES"} - 'json'. Обратите внимание на двойные кавычки – Vineeth
Кроме того, ключом является «song_id»: q1. q1 НИЧЕГО. Не строка, не целое число. Но рельсы ожидают, что song_id будет целым числом, но его беспомощный – Vineeth
@Vineeth фактически Q1, Q2 - переменные. данные в целом равны 1,2,3,4,5. Я отредактировал Q –