这是我会议的内容:
Session:
{
"session_id"=>"0aee1c4fbb70c027099958aea9c06ddc",
"should_activate_backbone"=>true,
"return_to"=>"/",
"split"=>{"login_signup"=>"New"},
"_csrf_token"=>"xY/pVjP0Q2aQVbKO0WiEwkgmadEWOnV9n9EKvM+jJh4="
}
我正在用拆分进行AB测试。因此,如果用户注销我想保留变体。 所以在新的会话中,我需要放回旧会话的这一部分:
"split"=>{"login_signup"=>"New"}
我想在控制器中以某种方式这样做。
答案 0 :(得分:1)
我设法使用after_filter
重置新会话中的值class Authentication::SessionsController < Devise::SessionsController
after_filter :set_back_experiments, :only => [:destroy]
def destroy
@split = session[:split]
super
end
private
def set_back_experiments
session[:split] = @split
end
end