2016-03-07 4 views
0

Я хочу создать страницу профиля для пользователей, подписавшись так что давайте предположим, что пользователь уже зарегистрирован, его профиль ссылка должна быть
рубин на рельсах MyProfile страницу

website.com/profile/username 

и на views/profile/index.html.erb каждого пользователя должны увидеть свой профиль и редактировать его с form_for я думаю

до сих пор у меня есть profiles_controller.rb, profile.rb модель и resources :profiles для моего routes.rb

Каков наилучший способ сделать это?

ответ

0

Если вы хотите получить по имени пользователя, то вам нужно использовать слизню. Пример ниже для версии id.

Профиль контроллер

def show 
    @profile = Profile.find(params[:id]) 
end 

маршруты:

get 'profile/:id' => 'profile#show' 

для :slug версии, гиперссылка будет выглядеть следующим образом: http://localhost:3000/profiles/**username**

маршруты:

resources :profiles, param: :slug 

profiles_controller

def show 
end 

private 

def set_profile 
    @profile = Profile.find_by_username(params[:slug]) 
end 

Или вы можете использовать камень для этого https://github.com/norman/friendly_id

+0

Я думаю, вы должны также написать пример для зрения? – user4571629

+0

@ user4571629 Вы хотите, чтобы я сделал целую страницу? Этот ответ был для вашего вопроса. – 7urkm3n

+0

@ user4571629 Кроме того, если вы хотите редактировать параметры, например, в твиттере, вы можете получить форму редактирования ajaxing. – 7urkm3n

 Смежные вопросы

  • Нет связанных вопросов^_^