Я разрабатываю приложение, бэкэнд которого написан на рельсах 5 API (бета-версия).
У моего API будет несколько версий, и я использую этот подход для управления версиями:
https://github.com/iamvery/rails-api-example/blob/master/config/routes.rb
Rails.application.routes.draw do
def api_version(version, &routes)
api_constraint = ApiConstraint.new(version: version)
scope(module: "v#{version}", constraints: api_constraint, &routes)
end
api_version(1) do
resources :articles, only: :index
end
api_version(2) do
resources :articles, only: :index
end
end
Дело в том, что когда я не указываю версию, она показывает мне (очевидно) ошибку (ActionController::RoutingError: No route matches [GET] \...
).
Но я бы хотел использовать последнюю версию API, а не выдавать ошибку.