2009-04-30 58 views
1

有沒有簡單的方法來定義我的整個rails應用程序的主模板?如果不是,那麼重用我的模板的最佳方式是什麼,以便我不將相同的模板複製並粘貼到一堆佈局文件中?DRY Rails主模板?

回答

8

您可以將其命名爲application.html.erb和Rails會使用它的整個應用程序。 更多信息在rails guides

0

/app/views/layouts/whatever.rhtml(或任何擴展你喜歡一起工作):

<html> 
... 
    <%= yield %> 
... 
</html> 

/app/controllers/ApplicationController.rb:

layout "whatever" 

(編輯:我不記得是否調用佈局application.rhtml(或其他)會自動將它作爲缺少規範的任何控制器的默認佈局,或者當您生成腳手架時是否將這一點魔法合併到默認的ApplicationController中,使用上面的語法)。

1

在視圖的佈局文件夾中創建application.html.erb文件。如果控制器沒有模板,它會被調用,所以你可能需要刪除它們。

您還可以定義一個模板,一個特定的控制器去

class FaqentriesController < ApplicationController 
    layout "admin" 
[..]