试图访问当前用户的角色

时间:2013-05-02 17:46:50

标签: ruby user-roles

我需要访问我当前的用户角色才能确保他们是管理员。如果他们是管理员,我想在我的视图中显示以下链接。

<% if current_user.role =='admin' %>
    <li class="manage">
        <a href="#" id="manage" style="float:none;">
            Manage
        </a>
    </li>
<% end %>

我的问题出在控制器中(如下)。如何定义@user以使其与当前用户对齐?现在我得到一个“找不到没有ID的用户”错误

def index

@user = User.find(params[:id])
respond_to do |format|
  format.html 
end

1 个答案:

答案 0 :(得分:0)

为什么要调整@user和current_user?他们是两个不同的东西。

  • current_user是您登录的用户(已识别并经过身份验证)。您使用的是设计或其他认证宝石吗?
  • @user通常是您尝试编辑或显示的用户,由params [:id]确定。基本上是您尝试访问的资源。什么引起了这个问题; @user对你意味着什么?