我正在运行rails 3.2.1并使用rails 3响应器以及响应者gem中可用的闪回响应器:https://github.com/plataformatec/responders
对于我的一些控制器操作,我总是希望重定向回到之前的URL但是如果创建了对象则显示flash消息,它看起来像这样:
class MyController < ActionController::Base
responders :flash
respond_to :html
def create
@my_object = MyObject.create(params[:my_object])
respond_with @my_object do |format|
format.html { redirect_to :back }
end
end
end
这在rails 3.2.1中运行良好,但似乎已经停止在3.2.2中工作了,似乎已经有一些关于在使用块时如何使用respond_with函数的修改。特别是这个补丁:https://github.com/rails/rails/pull/4870/files
我想知道是否有任何方法可以实现相同的行为,并使用闪回响应器设置闪存消息(我不想手动执行)。
答案 0 :(得分:0)
您需要创建自己的响应程序,以便始终进行重定向并将其包含在Controller中。
响应者就像Rack :: Middleware。你可以累积它。
答案 1 :(得分:0)
原来是rails 3.2.2 https://github.com/rails/rails/pull/5299
中的一个错误