轨道上的红宝石 3 - 登录 - 如果管理员直接到管理员索引 1st



我已经设置并工作了'用户'登录。我想更改它,以便当管理员或版主登录时 - 他们被定向到/admin/index 页面 1st,以便他们可以预览新帖子?

还想为所有"用户"添加一个"主页"链接,以整齐地坐在"登录"和"注册"链接旁边,不确定我如何在此代码块中做到这一点?

任何代码解决方案将不胜感激...

views/layouts/application.html.erb
<div id="user_nav">
    <% if user_signed_in? %>
        Signed in as <%= current_user.email %>. Not you?
        <%= link_to "Sign Out", destroy_user_session_path %>
    <% else %>
        <%= link_to "Sign Up", new_user_registration_path %> or
        <%= link_to "Sign In", new_user_session_path %>
    <% end %>
</div>

您可以在 if/else/end 块之前或之后添加 home 链接:

<div id="user_nav">
    <%= link_to "Home", root_path %>
    <% if user_signed_in? %>
        Signed in as <%= current_user.email %>. Not you?
        <%= link_to "Sign Out", destroy_user_session_path %>
    <% else %>
        <%= link_to "Sign Up", new_user_registration_path %> or
        <%= link_to "Sign In", new_user_session_path %>
    <% end %>
</div>

<div id="user_nav">
    <% if user_signed_in? %>
        Signed in as <%= current_user.email %>. Not you?
        <%= link_to "Sign Out", destroy_user_session_path %>
    <% else %>
        <%= link_to "Sign Up", new_user_registration_path %> or
        <%= link_to "Sign In", new_user_session_path %>
    <% end %>
    <%= link_to "Home", root_path %>
</div>

至于在注册时将管理员或版主定向到不同的页面,您可以在处理new_user_session_path的控制器中检测用户的角色,并redirect_to /admin/index他们是否是该类型的用户。

相关内容

最新更新