我试图让一个枚举器运行在(补充/波旁)前端框架的顶部。该元素是一个tab tabian,它有可重复的元素,但有一个特殊的is-active
类标记,它标记为javascript哪一个应该被扩展,以及用户关注的焦点。
我想设计一个枚举器来根据ActiveRecord中有多少条记录来创建标签和填充内容,这样我就可以使用枚举器 - 但是有一种聪明的方法我可以为第一个创建一个干净的异常{ {1}}它输出所以它包含<a>
标记?
目前我的黑客黑客在下面:
is-active
对于那个tab_num位来说似乎有一些深刻的东西......我感觉MVC力量的干扰让我把它放在我的视野中......加上这种方式我必须有另一个调查员用于vertical-tabs-container的body元素......
任何人都能更好地了解如何做到这一点?
答案 0 :(得分:1)
首先,这看起来像属于帮助者或演示者/装饰者。
代码本身可以简化。助手方法:
在您看来:
<div class="vertical-tabs-container">
<div class="vertical-tabs">
<%= user_tabs(@user) %>
</div>
... content goes here...
</div>
然后在你的助手中:
def user_tabs(user)
output = ""
user.items.each_with_index do |item,i|
output << content_tag(:a, item, :class=>"js-vertical-tab vertical-tab #{i == 0 ? '' : 'is-active'", :rel="tab#{i}", :href="javascript:void(0)
end
output
end
但是,如果您要单独开始添加内容和标签,请查看draper并在item元素上定义标签和正文的方法。