Как вынудить направляющие рассмотреть параметрический усилитель с точкой в значении как google.com
(например. /some_action/google.com
) единственный параметрический усилитель и нет "id" => "google", "format"=> "com"
?
Значение параметра должно быть "id" => "google.com"
По умолчанию динамические сегменты не принимают точки - это связано с тем, что точка используется в качестве разделителя для форматированных маршрутов. Однако вы можете добавить некоторые требования regex к параметрам маршрута. Здесь вы хотите разрешить точки в параметрах.
match 'some_action/:id' => 'controller#action', :constraints => { :id => /[0-z\.]+/ }
И в rails 2.3:
map.connect 'some_action/:id', :controller => 'controller', :action => 'action', :requirements => { :id => /[0-z\.]+/ }