Я пытался добавить новую GET api/journeys/recommended
конечную точку в свое приложение Grape API, поэтому, как всегда, проделал те же шаги - добавил контроллер, смонтировал контроллер в базовый файл. Все должно работать, но я получаю сообщение об ошибке:
{
"error": "id is invalid"
}
Вот мой код. Base.rb:
class Base < Root
before { doorkeeper_authorize! }
namespace :journeys do
route_param :id, type: Integer do
helpers do
def journey
@journey ||= Journey.active.find_by!(id: params[:id])
end
end
mount Enroll
mount Activities::Base
end
mount Index
mount Recommended
end
end
рекомендуемый контроллер
module Journeys
class Recommended < Base
desc 'List of recommended Journeys',
success: { code: 201 },
failure: [
{ code: 401, message: 'The access token is invalid' },
]
get :recommended do
status 201
end
end
end
Я обнаружил ту же проблему здесь , но я думаю, что решение не подходит для моей проблемы. Странно то, что если я удалю параметры маршрута, он будет работать, но мне нужен этот параметр маршрута для других классов, поэтому, очевидно, я не могу его удалить.