Ruby on Rails: Возможность использования точки в пути, в маршрутах
По умолчанию в маршрутах Ruby on Rais точка используется для определения формата запроса (как правило - расширения файлов). Но если вы хотите сделать допустимым использование точки в сегментах ваших маршрутов, необходимо прописать следующее правило для сегмента:
App::Application.routes.draw do ... get '/:name/:id' => 'texts#page', as: :text_page, constraints: { name: /[^\\\/]+/, # любые символы, кроме разделителей пути id: /\d+/, } ... end
Для чего это может понадобиться? Например, для руcскоязычных url, где тот же :name
не кодируется, а записывается прямо по-русски:
/Какая-то страница. И это заголовок/1