在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)
移到审批帮助程序文件。批准中
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 %>
但是,它显示了一个错误
未定义的局部变量或方法“approval”
是什么导致了错误,如何解决谢谢
最佳答案
您需要将参数传递给helper方法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 %>
关于ruby-on-rails - Rails:将代码从 View 移动到帮助文件时发生未定义的方法错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39302864/