2013-05-02 10 views
0

Мне нужно получить доступ к моей текущей роли пользователей, чтобы убедиться, что они администратор. Если они администратор, я хочу показать следующую ссылку на мой взгляд.Пытается получить доступ к роли текущего пользователя

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

Моя проблема в контроллере (см. Ниже). Как определить @user так, чтобы он совпадал с текущим пользователем? сейчас я получаю «Не удалось найти пользователя без идентификатора» ошибка

def index 

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

'@user = current_user'. Но почему бы вам не пропустить '@ user' и использовать' current_user' напрямую? – PinnyM

ответ

0

Почему вы хотите выровнять @user и CURRENT_USER? Это две разные вещи.

  • current_user это пользователь, с которым вы вошли в систему (идентифицировано и подтверждено подлинность). Используете ли вы изобретатель или другой камень для проверки подлинности?
  • @user, как правило, пользователь, которого вы пытаетесь отредактировать или отобразить, определяется параметрами [: id]. В основном ресурс, к которому вы пытаетесь получить доступ. Что вызывает вопрос; что для вас значит @user?
Смежные вопросы