Я думаю, что смысл статьи, которую вы нам дали, состоит в том, чтобы сказать:
- запрашивать регистрацию только в случае необходимости.
Что это значит?
Давайте рассмотрим пример.Вы веб-сайт электронной коммерции.
Когда клиент должен зарегистрироваться "наконец"?Во время оформления заказа.Никогда раньше.Так что вам не нужно ничего хранить или помнить о пользователе. Устройство никогда не используется, здесь никогда не используется.
Как вы управляете корзиной покупок неподписанного пользователя?Я бы сказал, база данных, с идентификатором сессии в качестве первичного ключа.Или Вы можете сохранить все идентификаторы предметов в cookie для дальнейшего использования.
В вашем коде, если у вас есть действие с именем checkout
, просто установите в контроллере before_filter authenticate_user!, :only => [:checkout]
Но, может быть, у вас есть некоторые ограничения, например, возможность сохранить ник своего пользователя, например, не подписывая его?