Не получается настроить пользовательский URL. Все RESTful маршруты работают нормально, но я не могу понять, как просто добавить /:unique_url
к существующим маршрутам, которые я создаю в модели (простая 4-символьная случайная строка) и которая будет служить "постоянной ссылкой" для своего рода. .
routes.rb
resources :treks
match ':unique_url' => 'treks#mobile'
Контроллер
.
.
def mobile
@trek = trek.find(params[:id])
end
Это потому, что я пытаюсь определить настраиваемое действие на существующем ресурсе? Могу ли я не создавать собственные методы на том же контроллере, что и контроллер с ресурсом?
Кстати, когда я изменяю routes.rb
на match 'treks/:id/:unique_url' => treks#mobile
, он работает нормально, но я просто хочу, чтобы URL был просто /:unique_url
Обновление Кажется, что find_by_[parameter]
- это путь ...
Я играл в консоли, и я не могу заставить какие-либо методы выдвигаться ... Я могу, например, запустить Trek.last.fullname
, но не могу запустить @trek = Trek.last
... и затем вызвать ... @trek.lastname
например. Любые подсказки почему? Я думаю, что это моя проблема.