![](/img/trans.png)
[英]Ruby on Rails view not pulling in application.html.erb layout
[英]can view not extend “application/application.html.erb” in ruby on rails?
众所周知,在ruby on rails
,所有视图都从application/application.html.erb
扩展而来,这在大多数情况下都是很好的,例如application.html.erb
如下:
<html>
<head></head>
<body>
<%= render 'layouts/header' %>
<%= yield %>
</body>
</html>
我不需要在每个视图中再次编写相同的代码,但是有时,只是在视图上很特殊,该视图与视图不同,例如我不想添加<%= render 'layouts/header' %>
在这种情况下。
也许参数在这种情况下只会对我有帮助,但是我想知道是否有任何视图不能从application/application.html.erb
扩展?
视图不会从application.html.erb
“扩展”,而是将其用作默认布局。 您当然可以使用控制器中的layout
方法(或render
方法中的layout
选项)进行更改,如下所示:
# this changes the default layout in every views of `AdminController` (and all other controllers that inherit from `AdminController`):
class AdminController < ApplicationController
layout :admin
# ...
end
# this changes the layout of specific action:
class SomethingController < ApplicationController
# ...
def some_action
# ...
render layout: :some_layout
end
end
参考如下: http : //guides.rubyonrails.org/layouts_and_rendering.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.