![](/img/trans.png)
[英]CSS and JS not loading with two actions in one controller ruby on rails
[英]Ruby on Rails: Default template for actions in one controller
我有一個控制器,恰巧每個動作都使用相同的(rabl)模板。 有沒有一種方法可以默認渲染該模板,而不必在每個操作中都放置調用render 'name'
?
我認為您可以為您的特定控制器創建另一個布局。 例如:
class MyController < ApplicationController
layout "name"
#...
end
請參見《 Rails指南-Rails中的布局和渲染 》中的“ 2.2.14查找布局”。
更新:
默認的渲染行為是如果未分配渲染視圖,則渲染與動作名稱相同的視圖。 要更改默認行為,您需要覆蓋render方法,例如:
class MyController < ApplicationController
#...
def render *args
args = ["the_view_name_which_you_want_to_render"] if args == []
super
end
# ...
end
如果要在所有控制器中覆蓋render方法,則可以將方法移至應用程序控制器,但是我認為這不是一個好主意。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.