班级MyClass
class MyClass < ActiveRecord::Base
attr_accessible :attr0, :attr1
end
控制器MyController
class MyController < ApplicationController
helper_method :set_var
def index
@myclasses = MyClass.all
end
def set_var(foo)
@var0 = foo.attr0
@var1 = foo.attr1
end
end
看法
<table>
<thead>
<tr>
<th>Head0</th>
<th>Head1</th>
</tr>
</thead>
<tbody>
<% @myclasses.each do |myclass| %>
<% set_var(myclass) %>
<tr>
<td><%= @var0 %></td>
<td><%= @var1 %></td>
</tr>
<% end %>
</tbody>
</table>
我想在它们被操纵之后输出var0
,但我必须先调用以循环浏览 MyClass 的实例。我上面所做的一切都没有在我看来。有没有一种优雅的方法可以在我的方法 set_var 中不处理 html 代码?var1
set_var
set_var(myclass)
编辑:
如下所述,这不是一个选项,因为我的示例非常简化
<% @myclasses.each do |myclass| %>
<tr>
<td><%= myclass.attr0 %></td>
<td><%= myclass.attr1 %></td>
</tr>
<% end %>