2010-09-15 25 views

回答

1

這可能是有道理的,但它不會那樣工作。 (如果有人知道如何做到這一點,隨時張貼)

你可以把常見的助手在ApplicationController,他們將可以從您的應用程序的任何控制器訪問。

3

在控制器之間重用代碼有兩種主要方法。

您可以創建ApplicationController的子類,該子類具有通用代碼,然後您的控制器想要共享從新控制器類繼承的代碼。 (或者只需要將代碼添加到ApplicationController本身,如果它需要被所有控制器共享)。

或者,您可以創建自己的模塊(這是所有幫助器本質上的),並將它們包含到您想要的控制器中使用代碼。

由於助手只是模塊,你可以在你的控制器中包含一個助手,但助手比控制器更適合視圖層,所以它很少是控制器之間共享代碼的地方。

1

如上所述,您可以將通用助手放在ApplicationController或子類中。我想補充一點,讓他們提供給的意見,以及,你把在類的頂部:

helper_method :foo 
+0

林嗨,蒂姆說,你可以把它們放在控制器和定義爲輔助方法例如:ApplicationController的< ActionController :: Base helper_method:foo end – sameera207 2010-09-16 06:03:54

相關問題