Согласно спецификации должно быть закодировано около 25 символов в URL:
http://en.wikipedia.org/wiki/Percent-encoding
Оказывается, в Rails 3 кодируются только несколько символов ([] &?), А остальные нетронуты (/).
Поэтому, когда я использую что-то вроде этого:
test_param = "test/a?bc"
link_to "Test link", :test_param => test_param
URL не работает (ошибка Route not found). Это потому, что в то время как знак вопроса был закодирован в процентах, слеш не был. И это нарушает URL.
Теперь мне нужно работать с параметрами, включая косую черту. Как заставить правильную кодировку URL для метода link_to? Может быть, использовать явное кодирование (CGI.encode)? Это правильное решение?