bvc*_*vcm 7 ruby-on-rails devise ruby-on-rails-4
使用设计和单独的控制器(用户)进行身份验证,这是一个单独的"显示"操作
class UsersController < ApplicationController
#before_filter :authenticate_user!
def show
@user = User.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @user }
end
end
end
Run Code Online (Sandbox Code Playgroud)
到目前为止,视图(users/show.html.erb)仅显示所访问配置文件的用户名
<%= @user.username %>
Run Code Online (Sandbox Code Playgroud)
路由还:
resources :users
Run Code Online (Sandbox Code Playgroud)
我希望这些个人资料页面可以公开访问,如果他们得到一个链接/告知地址,但也想要一个链接可供当前登录的用户访问他的个人资料.我的标题中的一个片段:
<li><%= link_to "Profile", @user %></li>
<li><%= link_to "Settings", edit_user_registration_path %></li>
<li><%= link_to "Logout", destroy_user_session_path, method: "delete" %></li>
Run Code Online (Sandbox Code Playgroud)
目前,@ user就是为了阻止路由错误.我不完全确定要链接到什么,尝试了很多组合,但显然我的铁杆新手心灵缺少了我需要做的额外的事情.任何帮助深表感谢!
(Rails 4,ruby 2.0.0)
附注我最后还希望允许指向个人资料页面的链接以以下格式显示id +用户名:#{id} - #{username}(而不仅仅是用户/ 1 - > users/1 -bbvoncrumb).
Mar*_*pka 14
如果您希望将User实例link_to链接到给定用户的show页面,则只需将实例作为参数传递即可.因此,如果您想要链接到Devise中当前登录的用户配置文件,您只需要:
<li><%= link_to "Profile", current_user %></li>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16348 次 |
| 最近记录: |