我的問題是:我需要訪問另一個控制器動作後訪問一個動作,完成並呈現第二個原因動作將有另一個呈現。觀察者認爲要使用,但從我讀的內容來看,他們只處理模型。如何在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。可能嗎?或者只是模型? –
控制器動作只能渲染一次,否則會遇到雙渲染錯誤。顯示真正需要解決的問題,而不是概念。 –
我知道比利,但是是不同的情況 –