ruby 在 rails 我的个人资料页面上
ruby on rails myprofile page
我想为注册用户创建个人资料页面
所以假设一个用户已经注册,他的个人资料 link 应该是
website.com/profile/username
并且在
views/profile/index.html.erb
每个用户都应该看到自己的个人资料并使用 form_for 我猜
进行编辑
到目前为止,我的 routes.rb
有 profiles_controller.rb
、profile.rb
模型和 resources :profiles
最好的方法是什么?
如果您想通过用户名获取,则需要使用 slug。以下示例适用于 id
版本。
配置文件控制器
def show
@profile = Profile.find(params[:id])
end
路线:
get 'profile/:id' => 'profile#show'
对于:slug
版本,url会是这样的: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
或者您可以为此使用 gem https://github.com/norman/friendly_id
我想为注册用户创建个人资料页面
所以假设一个用户已经注册,他的个人资料 link 应该是
website.com/profile/username
并且在
views/profile/index.html.erb
每个用户都应该看到自己的个人资料并使用 form_for 我猜
进行编辑
到目前为止,我的 routes.rb
有 profiles_controller.rb
、profile.rb
模型和 resources :profiles
最好的方法是什么?
如果您想通过用户名获取,则需要使用 slug。以下示例适用于 id
版本。
配置文件控制器
def show
@profile = Profile.find(params[:id])
end
路线:
get 'profile/:id' => 'profile#show'
对于:slug
版本,url会是这样的: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
或者您可以为此使用 gem https://github.com/norman/friendly_id