【发布时间】:2012-06-12 15:53:27
【问题描述】:
我想为我的视图创建抽象组件,这些组件不会透露它们的呈现方式。 该示例是一个选项卡式导航框,例如 tabs from bootstrap
在我看来,我想写s.th。喜欢:
= tab_section(self) do
- tab 'tab1' do
%p tab1 content
= link_to example_var, "#top"
- tab 'tab2' do
%p tab2 content
= link_to 'http://example.com', "#top"
然后应该将其呈现给 s.th。像这样:
<ul>
<li>tab1</li>
<li>tab2</li>
</ul>
<div class='content'>
<div class='tab'>
<p>tab1 content</p>
<a href='#top'>this could also be an @var from the controller</a>
</div>
<div class='tab'>
<p>tab2 content</p>
<a href='#top'>http://example.com</a>
</div>
</div>
我所有推迟呈现选项卡“内容”的尝试都失败了。我创建了一个minimal rails app,展示了我采用的三种方法。
查看 application_helper.rb 和 welcome#show 视图。 做这种事情的正确方法是什么?
【问题讨论】:
标签: ruby-on-rails views render block dry