我的问题是:我需要访问另一个控制器动作后访问一个动作,完成并呈现第二个原因动作将有另一个呈现。观察者认为要使用,但从我读的内容来看,他们只处理模型。如何在Ruby on Rails中自定义观察者到控制器的动作
高清ACTION_1
render :xml => {:success => "Msg success."}
末
高清ACTION_2
render :nothing => "", :locals => {:scheduling_id => scheduling_id}
末
我的问题是:我需要访问另一个控制器动作后访问一个动作,完成并呈现第二个原因动作将有另一个呈现。观察者认为要使用,但从我读的内容来看,他们只处理模型。如何在Ruby on Rails中自定义观察者到控制器的动作
高清ACTION_1
render :xml => {:success => "Msg success."}
末
高清ACTION_2
render :nothing => "", :locals => {:scheduling_id => scheduling_id}
末
“操作” 只是方法调用。 action_1
可以调用action_2
,but you can't call render
more than once,所以你有一个结构问题,你需要处理。
也许这样的事情是你要去的?
class MyController < ApplicationController
def my_action
# ...
my_shared_stuff
render ...
end
private
def my_shared_stuff
# ... shared things
end
end
所以我想要一个观察者,当你完成渲染action_1时知道观察者现在应该调用action_2。我的情况是,我需要渲染一个xml action_1从webservice返回,第二个访问方法js在action_2.html.erb中。 –
@RachidCalazans,请求只能请求一种类型,html,js,json,xml或其他。即使你可以渲染,你如何交付? –
@BillyChan,我知道它只能有一种类型。所以我想在控制器中使用Observer/Listiner。可能吗?或者只是模型? –
控制器动作只能渲染一次,否则会遇到双渲染错误。显示真正需要解决的问题,而不是概念。 –
我知道比利,但是是不同的情况 –