интеграция колдовства в процесс оформления заказа - PullRequest
1 голос
/ 09 октября 2011

Я бы хотел добавить волшебство-драгоценность для аутентификации во время покупки в онлайн-магазине. Я следовал за Railscast Райана Бэйта эпизод 283 - аутентификация с Волшебством .

Учитывая, что vistor собрал некоторые продукты в своем session[:cart] и теперь хочет оформить заказ. Он нажимает «оформить заказ», и RailsApp проверяет, вошел ли он в систему. Если нет, он будет перенаправлен на сессии # новые и должен войти в систему.

Проблема в том, что логин # колдовства делает session_reset, поэтому session[:cart] также будет уничтожен.

Есть ли для этого изящное решение? Я просто могу вспомнить некоторые, imho, грязные хаки, такие как создание новых действий контроллера или попытка временно сохранить корзину в базе данных.

Приветствия, CS

1 Ответ

2 голосов
/ 16 октября 2011

просто сделайте что-то подобное в вашем контроллере сеанса (место, которое вы называете login):

temp_cart = session[:cart]
login(…)
session[:cart] = temp_cart

Таким образом, вы передадите свою корзину для сброса сеанса.

Bests, JJS

...