сохранить объект рубин на рельсах - PullRequest
0 голосов
/ 01 декабря 2009

У меня есть объект в ruby ​​on rails для @user, который содержит имя пользователя, пароль и т.д.

Как я могу обеспечить сохранение значений во всех представлениях?

Спасибо

Ответы [ 3 ]

7 голосов
/ 01 декабря 2009

Если вы установите его следующим образом:

class ApplicationController < ActionController::Base
  before_filter :set_user

protected 
  def set_user
    @user = User.find_by_id(session[:user_id]) 
  end
end

Тогда во всех контроллерах, поскольку все они наследуются от ApplicationController, будет установлено значение @user.

Примечание: это установит @user равным nil, если сессия [: user_id] не была установлена ​​для этого сеанса.

Для получения дополнительной информации о фильтрах и: before_filter, проверьте эту ссылку: Модуль: ActionController :: Filters :: ClassMethods

1 голос
/ 01 декабря 2009

Я так понимаю, вы хотите какой-нибудь пользовательский сустем? Вы вошли в систему и отслеживаете всю вашу систему?

AuthenticatedSystem - это то, что может вам помочь. Есть много документации, которая расскажет вам, как именно настроить среду, которая ее использует. Я лично использую, если для нескольких систем, которые я сделал.

0 голосов
/ 01 декабря 2009

В вашем ApplicationController добавьте ваш объект в сеанс и создайте для него переменную. Добавьте before_filter, который вызывает метод, который это делает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...