我有一个使用 Sorcery 进行身份验证的 Rails 3.2.8 应用程序。巫术提供了一种current_user
方法,非常标准的东西。
我的应用程序有订阅,它们几乎以标准的足智多谋的方式工作。这是控制器的精简版:
class SubscriptionsController < ApplicationController
before_filter :require_login
force_ssl
def show
@subscription = SubscriptionPresenter.new( current_user )
end
def create
handler = StripeHandler.new( current_user )
...
end
def destroy
handler = StripeHandler.new( current_user )
...
end
end
该#show
动作工作正常,current_user
加载。但是,现在#create
不起作用,因为current_user
最终nil
处于该动作中。
那么,为什么current_user
当登录的用户发布到这个操作时是 nil 呢?我的猜测是关于会话通过 SSL 工作的方式,但我不知道我在这里缺少什么......