关于这个的代码不言自明。
这有效......
class SomeController < ApplicationController
def index
flash.now[:alert] = 'Something got borked!'
end
end
这不是(flash
为空)...
class SomeController < ApplicationController
after_action :test_flash
def index
end
def test_flash
flash.now[:alert] = 'Something got borked!'
end
end
使用Rails 4.0.2,Ruby 2.1.0
有人想到吗?
答案 0 :(得分:2)
在index
操作栏的末尾,只需呈现new
页面,因为您没有指定任何不同的内容。
在呈现索引页面之后执行after_action
,即,它添加了一个回调,该回调将在索引操作的执行完成后被调用。因此,test_flash
没有效果,因为它太晚了,索引页面已经呈现。
编辑:
如果要在渲染之前调用test_flash,则可以覆盖render
方法并执行以下操作:
def render *args
test_flash
super
end