Загружает ли Mongoid весь пользовательский объект при использовании переменной devise current_user? - PullRequest
1 голос
/ 21 января 2012

Я включил все действия для пользователя, и скажем, у большинства пользователей есть десятки тысяч действий, связанных с ним. При проверке current_user в коде моего контроллера, Mongoid загружает весь пользовательский объект, содержащий все встроенные записи активности? Мои интуитивные ощущения говорят мне «нет», но я бы очень хотел это подтвердить, чтобы лучше спать по ночам. :) Спасибо!

Ниже приведена краткая версия класса User.

class User
  include Mongoid::Document
  embeds_many :activities
end

EDIT

Позвольте мне пояснить, почему мне особенно интересно посмотреть, загружается ли весь объект при использовании current_user. Поскольку действия встроены в пользовательский документ, и большинство пользователей имеют тысячи записей, каждая полная загрузка будет дорогой, если все, что мне нужно, это просто проверить, вошел ли пользователь в систему или нет.

1 Ответ

1 голос
/ 22 января 2012

Да.При аутентификации Devise запрашивает всю модель, поэтому Mongoid предоставит вам доступ к activities, если вы позвоните current_user.activities.

...