세션을 기반으로 @current_user를 설정하는 user_authenticate 메소드가 있습니다. 탐색 링크가 포함 된 탐색 바 레이아웃이 있습니다. 링크 중 하나를 숨기고 사용자 ID가 8 인 경우에만 표시하려고합니다 (관리자). 이렇게 레이아웃을 썼습니다.내부에 link_to를 사용하는 경우
<div align="center" style="width: 90%">
<nav class="navbar navbar-inverse" role="navigation">
<%= link_to "Home", '/', :class => "btn btn-default navbar-btn"%>
<%= link_to "Currency Master", currencies_url, :class => "btn btn-default navbar-btn"%>
<%= link_to "Receipts", receipts_url, :class => "btn btn-default navbar-btn"%>
<%= link_to "Expenses", expenses_url, :class => "btn btn-default navbar-btn"%>
<%= link_to "Exchange", exchanges_url, :class => "btn btn-default navbar-btn"%>
<% if @current_user.id == 8 %><%= link_to "Report", reports_url, :class => "btn btn-default navbar-btn" %>
<% end %>
</nav>
코드는 8입니다하지만 곧 내가 오류를 다음 얻을 링크를 클릭하는 경우에만 사용자 ID의 네비게이션 바의 "보고서"버튼을 보여주고 있음을 잘 작동합니다. 당신은 @current_user.id
도 @current_user
경우를 확인하는
undefined method `id' for nil:NilClass
Extracted source (around line #8):
6
7
8
9
10
<%= link_to "Expenses", expenses_url, :class => "btn btn-default navbar-btn"%>
<%= link_to "Exchange", exchanges_url, :class => "btn btn-default navbar-btn"%>
<% if @current_user.id == 8 %><%= link_to "Report", reports_url, :class => "btn btn-default navbar-btn" %>
<% end %>
</nav>
전체 오류 로그를 추가 할 수 있습니까? – Zero