Sinatra 路線引數

當然,你可以將資料傳遞到 Sinatra 路線,接受路線中的資料,你可以新增路線引數。然後,你可以訪問 params 雜湊:

get '/hello/:name' do
  # matches "GET /hello/foo" and "GET /hello/bar"
  # params['name'] is 'foo' or 'bar'
  "Hello #{params['name']}!"
end

你也可以直接將引數分配給變數,就像我們在 Ruby 雜湊中通常所做的那樣:

get '/hello/:name' do |n|
  # matches "GET /hello/foo" and "GET /hello/bar"
  # params['name'] is 'foo' or 'bar'
  # n stores params['name']
  "Hello #{n}!"
end

你還可以使用 asteriks 新增沒有任何特定名稱的萬用字元引數。然後可以使用 params [‘splat’]訪問它們:

get '/say/*/to/*' do
  # matches /say/hello/to/world
  params['splat'] # => ["hello", "world"]
end