2010-12-06 53 views
0

作爲我的模板的一部分,我將展示一些在application_controller中創建的自動鏈接。其中一些鏈接將提供從展示頁面到相應編輯頁面的直接導航,以及一些類似的事情。根據當前記錄爲已知動作創建導軌路徑

我當前的代碼包括:

nav_links << {:name=>:edit,:url=>url_for(:action => :edit)} 

這從分開的偉大工程,我在我的routes.rb文件中定義的子資源。

在這種情況下,而不是導航到:

a/1/b/2/edit 

它定位到

b/2/edit 

這不是一個有效的途徑。

有關如何完成此任何想法將不勝感激。我非常希望儘可能避免出現特殊情況。

回答

0

有點困惑 - 爲什麼不只是使用路線資源爲你定義。鑑於你提到'孩子資源',我可以假設你已經宣佈了這些資源?如果是這樣的 - 你應該在命令行中一臺主機提供給您的路線......

  • 斷火「耙路線」
  • 找到你的路線
  • 這將極有可能採取兩個參數,看起來像這樣(大約):

    edit_a_b GET/A /:A_ID/b /:ID

  • 只需使用edit_a_b_url(@a,@b)

希望這會有所幫助。

+0

因爲我在應用程序控制器中執行此操作,所以此代碼針對每個控制器運行,因此我需要爲當前控制器找到編輯操作,而不是已知操作。 – Leo 2010-12-09 18:49:40