wer*_*mon 3 ruby ruby-on-rails camping
我想在每个渲染的视图上出现一些视图,但是没有重复代码或违反规范,我似乎无法找到实现这一目标的方法.
这是我当前的代码,在每个视图中调用:
def ImOnABoat::Views
def layout
html do
head do title "Petstore" end
body do yield end
end
end
def navigation
p "Welcome to our tiny petstore!"
end
def poodle
navigation # Have to duplicate this in every view
p "We have a poodle!"
end
def fluffy_bunny
navigation # Have to duplicate this in every view
p "Come see-- OH CRAP IT'S A VELOCIRAPTOR!"
end
end
我也可以通过允许公共块在体外渲染来使其工作,但这违反了规范,并且最终可能会破坏一些刮刀脚本.
def layout def head do title "Petstore" end nav # This is not inside <body>! def body do yield end end
这可以使用rails布局和在布局中渲染部分来完成.减少对这种"建筑"的需求并使管理更容易.
http://guides.rubyonrails.org/layouts_and_rendering.html#using-partials
| 归档时间: |
|
| 查看次数: |
3982 次 |
| 最近记录: |