如果未指定参数,则覆盖默认路由

时间:2010-03-30 09:11:52

标签: ruby sinatra rack

请考虑以下代码段:

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

如果未指定name,如何设置默认参数?如果我可以将默认参数设置为Tom,那么这也会路由URL,这样/ hello /会自动重定向到/ hello / tom吗?

1 个答案:

答案 0 :(得分:1)

我认为你必须做类似的事情:

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

你可以做'hello / *'并通过params[:splat]访问它,如果你只想要一个逻辑位置。但你仍然需要重定向到/ hello /.

到/ hello / tom url