Эта рекомендация основана на передовом опыте «разделения проблем» между различными компонентами, составляющими ваше Rails-приложение. Лучшее место для определения текущего пользователя в вашем контроллере. Здесь вы можете получить доступ к своим параметрам и / или сеансу, чтобы определить, вошел ли кто-то прямо или косвенно через плагин аутентификации. Затем, если вам нужна эта информация в вашем представлении, просто сохраните ее в такой переменной, как @user, которая будет автоматически доступна в вашем представлении для отображения. Делая это таким образом, если вы позже измените свой механизм аутентификации, вы можете сделать это, не касаясь ваших представлений, что является хорошим признаком того, что у вас есть хорошее разделение между различными компонентами в вашем приложении.
Также в ответ на вторую часть вашего вопроса:
Я думаю, я мог бы поставить это повторение
код в одном методе, который вызывается
всеми другими действиями в этом
класс.
Это легко сделать с помощью: before_filter в вашем контроллере, который вы можете указать на метод, который проверяет аутентификацию и создает любые необходимые переменные экземпляра для совместного использования между действиями в вашем контроллере.