簡體   English   中英

在視圖中鏈接到管理儀表板

[英]Link to Admin Dashboard in View

我已經設置了Active Admin,現在嘗試在視圖中添加指向儀表板的鏈接。

我的application_controller中有current_admin_user方法:

def current_admin_user
  return nil if user_signed_in? && !current_user.admin?
  current_user
end

我的看法是:

<% if current_admin_user %>
  <li><%= link_to "Admin", admin_path %></li>
<% end %>

但是我得到了錯誤:

undefined local variable or method `current_admin_user'

有人知道如何解決嗎?

如果要在視圖中使用控制器方法,則應在application_controller添加以下行:

helper_method :current_admin_user

這應該工作:

<% if user_signed_in? %>
<% if current_admin_user? %>
<li><%= link_to "Admin", admin_path %></li>
<% end %>
<% end %>

如果失敗,請嘗試:

<% if user_signed_in? %>
<% if current_user.admin? %>
<li><%= link_to "Admin", admin_path %></li>
<% end %>
<% end %>

將該函數放在/ helpers文件夾中的application_helpers.rb文件中,它應該可以工作

  def current_admin_user
    return nil if user_signed_in? && !current_user.admin?
    current_user
  end

另一種方法是使用user_signed_in嗎? && current_user.admin? 在你看來

  <% if user_signed_in? && current_user.admin? %>
    <li><%= link_to "Admin", admins_path %></li>
  <% end %>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM