【发布时间】:2009-04-30 06:31:17
【问题描述】:
是否有一种简单的方法可以为我的整个 Rails 应用程序定义主模板?如果不是,那么重复使用我的模板的最佳方法是什么,这样我就不会将同一个模板复制并粘贴到一堆布局文件中?
【问题讨论】:
标签: ruby-on-rails templates dry
是否有一种简单的方法可以为我的整个 Rails 应用程序定义主模板?如果不是,那么重复使用我的模板的最佳方法是什么,这样我就不会将同一个模板复制并粘贴到一堆布局文件中?
【问题讨论】:
标签: ruby-on-rails templates dry
您可以将其命名为 application.html.erb,Rails 会将其用于整个应用程序。 更多信息请访问rails guides。
【讨论】:
在视图的布局文件夹中创建一个 application.html.erb 文件。如果控制器没有模板,它将被调用,因此您可能需要删除它们。
您还可以为特定控制器定义模板
class FaqentriesController < ApplicationController
layout "admin"
[..]
【讨论】:
/app/views/layouts/whatever.rhtml(或您喜欢使用的任何扩展):
<html>
...
<%= yield %>
...
</html>
/app/controllers/ApplicationController.rb:
layout "whatever"
(编辑:我不记得调用布局 application.rhtml (或其他)是否会自动使其成为任何缺乏规范的控制器的默认布局,或者是否将这一点魔法纳入默认布局ApplicationController 当你生成脚手架时,使用上面的语法。)
【讨论】: