Я пытаюсь создать простое приложение Sinatra, которое вытаскивает из базы данных множество почтовых кодов и отображает их в JSON. У меня есть два получить заявления прямо сейчасREST API Маршруты с Sinatra не работают
get '/postalcodes' do
PostalCodes.all.to_json only: [:CountryCode, :PostalCode, :PlaceName, :AdminName1, :AdminCode1, :AdminName2, :AdminCode2, :AdminName3, :AdminCode3, :Latitude, :Longitude, :Accuracy]
end
get '/postalcodes/:countrycode' do
PostalCodes.find(params[:countrycode]).to_json only: [:CountryCode, :PostalCode, :PlaceName, :AdminName1, :AdminCode1, :AdminName2, :AdminCode2, :AdminName3, :AdminCode3, :Latitude, :Longitude, :Accuracy]
end
Первый GET работает нормально, но я надеюсь, что я мог бы ввести URI:
localhost:3000/postalcodes/US
, чтобы получить все почтовые коды с кодом страны «США ». Ну, это не работает.
Соглашение о Ruby для имен столбцов - это случай с змеей, и единственное для моделей, только FYI. Для вашего проблемного запроса вы хотите сделать 'PostalCodes.where (CountryCode: params [: countrycode])' для извлечения записей. –