Я использую Rails (3.2.6) с приложением (2.1.2) и имею контроллер, где бы я хотел убедиться, что пользователи перед проверкой подлинности.authenticate_user! от Devise, в spree (spree commerce), не работает, как ожидалось, когда используется как before_filter
Оптимистично, я попробовал ...
module Spree
class MyAppController < Spree::BaseController
before_filter :authenticate_user!
...remainder of MyAppController code...
и я НЕ перенаправлен на вход или странице входа в. Я перенаправлен на страницу «Продукты», с вежливым сообщением наверху, говоря, что мне нужно войти в систему или зарегистрироваться, чтобы продолжить.
Что бы я хотел , как, так это то, что я перенаправлен на регистрацию/вход в систему, и когда это будет успешно завершено, исходный путь контроллера возобновится.
Поиск вокруг, я прочитал, что authenticate_user! от Devise взаимодействует со Spree таким образом, чтобы вызвать бесконечное перенаправление, поэтому что-то в Spree отключает это, что приводит к хромому поведению, описанному выше.
Неужели кому-нибудь удалось заставить это работать или есть предложения по хорошей работе?
Я бы рассмотреть это достаточно серьезно, чтобы оправдать сообщение об ошибке в самой Шпрее проекта. Можете ли вы подать файл там? https://github.com/spree/spree/issues. –
Done: Issue # 1734 –