1

我一定在这里做错了什么。我想在控制器运行后运行一个函数。此函数填充我的会话变量的某些部分,然后我在下一个请求中使用该信息。这是代码。

class SummariesController < ApplicationController  
    after_filter :foo, :only=>[:bar]  

    def foo  
        session[:x] = y  
    end  

    def bar  
        #some code  
    end  
end  

在此代码foo之前被调用bar。我希望在 bar 渲染后调用它。我究竟做错了什么?

4

1 回答 1

1

after_filter在将响应发送到客户端之前执行,因此您将无法在bar呈现后运行它。从 Rails 指南:

他们可以访问即将发送给客户端的响应数据

于 2012-04-22T23:18:01.737 回答