2016-03-07 47 views
0

我希望为用户创建,签署了 所以假设用户已经注册,个人资料页他的个人资料链接应该
Ruby on Rails的我的资料

website.com/profile/username 

,并在 views/profile/index.html.erb 每个用户应该看到自己的个人资料,并与的form_for编辑我猜

到目前为止,我profiles_controller.rbprofile.rb模型和resources :profiles我的routes.rb

这样做的最佳方法是什么?

回答

0

如果你想通过用户名得到,那么你需要使用slu。。以下示例适用于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另外,如果想要编辑twitter等选项,那么您可以通过ajaxing获得编辑表单。 – 7urkm3n