-1

ruby-1.9.3-p194
导轨 3.0.9

我遇到了这么多奇怪的flash变量行为。

我的控制器

class AdviceController < ApplicationController
    # POST /advice/save.js
    def save
        t = Logger.new(STDOUT)

        t.debug '+============================================'
        t.debug flash['advice-saving-error-msg']
        t.debug '+============================================'

        flash['advice-saving-error-msg'] = 'strange string'

        t.debug '============================================'
        t.debug flash['advice-saving-error-msg']
        t.debug '============================================'
    end
end

当我第一次询问保存操作时,我在调试中看到:

+============================================
nil
+============================================
============================================
strange string
============================================

当我下次在调试中看到 保存操作时询问!!!!!!!!!!!!:

+============================================
strange string
+============================================
============================================
strange string
============================================

它让我发疯!为什么!!!

我希望得到:

+============================================
nil
+============================================
============================================
strange string
============================================

看起来 Rails 通过动作调用保存了 flash 变量。
任何人都可以帮助我吗?

4

1 回答 1

1

使用Flash.now. 基本闪存将其保存以供下一步操作。

于 2012-09-28T07:49:14.880 回答