новичок: как получить динамические ссылки для current_user? - PullRequest
1 голос
/ 12 марта 2012

Я пытаюсь выяснить, как получить динамическую ссылку, например

  • / пользователи / user1 / шоу
  • / пользователей / user1 / редактировать или
  • / профили / 1 /

Как мне создать маршрут, который я мог бы вставить в свои представления, например view_profile_path, и который бы включал идентификатор или имя пользователя пользователя?

Ответы [ 2 ]

3 голосов
/ 12 марта 2012

в config/routes.rb вам нужно добавить 1 простую строку:

resources :users

и получить все это

HTTP Verb   Path            action    named helper

GET         /users          index     users_path
GET         /users/new      new       new_user_path
POST        /users          create    users_path
GET         /users/:id      show      user_path(:id)
GET         /users/:id/edit edit      edit_user_path(:id)
PUT         /users/:id      update    user_path(:id)
DELETE      /users/:id      destroy   user_path(:id)

Вы можете прочитать о маршрутах рельсов в руководствах

2 голосов
/ 12 марта 2012

На самом деле, я думаю, что вам нужно что-то подобное в config / rout.rb

resources :users do
  resources :profiles
end

Позже вы можете проверить маршруты ресурсов REST-ful, введя команду:

rake routes

Таким образом, у вас есть более естественный подход к вашим маршрутам, при котором ваши пользователи будут привязаны к одному или нескольким профилям, поэтому вы можете использовать что-то вроде:

user_profile_path(@user)

для созданиясоответствующая ссылка на профиль пользователя.

...