2009-02-09 17 views

Antwort

10

Haben Sie versucht, Splat Parameter zu benutzen?

Etwas wie:

get '/add/*' do 
    protocol = params[:splat].first 
    address = params[:splat][1..-1].join('/') 

    url = protocol + "//" + address 
end 
2

danke, habe ich nicht über Splat Parameter gehört und es funktioniert perfekt für diesen Fall. Tatsächlich habe ich in der Dokumentation sah, und ich fand sogar noch kürzer mit Aufnahmeparameter und regulären Ausdrücken:

get %r{/add/(.+)} do 
    url = params[:captures] 
end 
2

oder -nutzung:

url = request.fullpath[5..-1]