неявное преобразование символа в целое число (TypeError)
Это ошибка возникает в этом случае, потому что вы пытаетесь получить доступ к элементам в массиве, как это было быть ха sh. Ruby пытается преобразовать символ, который вы передаете в качестве параметра, методу []
, потому что получатель является массивом, и массивы могут быть доступны для их элементов по их индексу.
Короче говоря, вы есть массив хэшей, если вам нужен идентификатор одного из них, фильтруйте элементы, пока не получите его, и там вы можете использовать ['id']
:
[{ "id"=>2, "name"=>"Cafe", "service_code"=>0 },
{ "id"=>3, "name"=>"restaurant", "service_code"=>0 }][0]['id']
# 2