Измените имя параметра: id в Routing resources for Rails

Я посмотрел, как изменить слот динамических параметров и нашел этот пост, который делает именно то, что нужно. Это сообщение https://whattbot.com/blog/rails-patch-change-the-name-of-the-id-parameter-in

В основном то, что он делает, если следующие маршруты:

map.resources :clients, :key => :client_name do |client|
  client.resources :sites, :key => :name do |site|
    site.resources :articles, :key => :title
  end
end

Эти маршруты создают следующие пути:

/clients/:client_name
/clients/:client_name/sites/:name
/clients/:client_name/sites/:site_name/articles/:title

Одним из решений является переопределение метода def to_param в модели, но я хочу, чтобы это не касалось самой модели.

Но поскольку он для Rails 2.x, как я могу добиться того же для Rails 3?

Обновление

Это приложение использует Mongoid. Не AR. Таким образом, дружественный драгоценный камень нельзя использовать afaik.

101
задан Dave Powers 15 July 2019 в 18:28
поделиться