在approval.html.erb
中<% @approval.each do |approval| %>
<td><%= Material.find_by_id(approval.material_id).m_name%></td>
<% end %>
我想将Material.find_by_id(approval.material_id)
移至审批帮助文件。
在approval_helper.rb
def approval_material
Material.find_by_id(approval.material_id)
end
然后,我修改approval.html.erb
<% @approval.each do |approval| %>
<td><%= approval_material.m_name%></td>
<% end %>
但是,它显示错误
未定义的局部变量或方法`批准'
导致错误的原因是什么,如何解决?感谢
答案 0 :(得分:3)
您需要将参数传递给辅助方法approval_material
方法。类似的东西:
def approval_material(approval)
Material.find_by_id(approval.material_id)
end
然后在您的观点中,您可以将其称为:
<% @approval.each do |approval| %>
<td><%= approval_material(approval).m_name%></td>
<% end %>