Переопределить маршрут по умолчанию, если параметр не указан

StackOverflow https://stackoverflow.com/questions/2544000

  •  23-09-2019
  •  | 
  •  

Вопрос

Рассмотрим следующий фрагмент:

  get '/hello/:name' do |n|
        "Hello #{n}!"
  end

Как я могу установить параметры по умолчанию, если имя не указано?Если я смогу установить параметр по умолчанию для Тома, будет ли это также маршрутизировать URL-адрес, чтобы /hello/ автоматически перенаправлялся на /hello/tom?

Это было полезно?

Решение

Я думаю, вам нужно сделать что-то вроде:

get '/hello/' do
  redirect '/hello/tom'
end

Вы можете написать «hello/*» и получить к нему доступ через params[:splat], если вам просто нужно одно место для логики.Но вам все равно придется перенаправить, чтобы перейти к URL-адресу /hello/tom из /hello/.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top