Pass a url as a parameter in Ruby on Rails route

Viewed 3497

I'm trying to pass an audio URL as a parameter in Ruby on Rails, and googling "how to pass a url in a url" has proved to be problematic. The problem is that I can only get the url to return minus a crucial forward slash.

My route looks like:

get 'my_page/:title/*url', to: 'my_page', action: 'show'

The variable is defined in the controller like so:

@url=params[:url]

So the request would look like:

www.my_app.com/my_page/im_a_title/http://im_a_url.mp3

The url variable, however, ultimately results missing a slash after the prefix:

http:/im_a_url.mp3 <--notice the missing forward slash

Of note, the construction of the urls varies enough that it would be cumbersome to construct them. (Some begin with http and some https, for instance.) How do I preserve the syntax of my url? Or is there a better way to pass this parameter all together?

3 Answers
Related