2013-08-23 82 views
0

我的問題是:我需要訪問另一個控制器動作後訪問一個動作,完成並呈現第二個原因動作將有另一個呈現。觀察者認爲要使用,但從我讀的內容來看,他們只處理模型。如何在Ruby on Rails中自定義觀察者到控制器的動作

高清ACTION_1

render :xml => {:success => "Msg success."} 

高清ACTION_2

render :nothing => "", :locals => {:scheduling_id => scheduling_id} 

+1

控制器動作只能渲染一次,否則會遇到雙渲染錯誤。顯示真正需要解決的問題,而不是概念。 –

+0

我知道比利,但是是不同的情況 –

回答

0

「操作」 只是方法調用。 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 
+0

所以我想要一個觀察者,當你完成渲染action_1時知道觀察者現在應該調用action_2。我的情況是,我需要渲染一個xml action_1從webservice返回,第二個訪問方法js在action_2.html.erb中。 –

+0

@RachidCalazans,請求只能請求一種類型,html,js,json,xml或其他。即使你可以渲染,你如何交付? –

+0

@BillyChan,我知道它只能有一種類型。所以我想在控制器中使用Observer/Listiner。可能嗎?或者只是模型? –

相關問題