首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails:将代码从视图移到助手文件时出现的未定义方法错误

Rails:将代码从视图移到助手文件时出现的未定义方法错误
EN

Stack Overflow用户
提问于 2016-09-03 03:06:25
回答 1查看 83关注 0票数 1

在approval.html.erb中

代码语言:javascript
复制
<% @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中

代码语言:javascript
复制
def approval_material
  Material.find_by_id(approval.material_id)
end

然后,我修改approval.html.erb

代码语言:javascript
复制
<% @approval.each do |approval| %>
    <td><%= approval_material.m_name%></td>
<% end %>

但是,它显示了一个错误。

未定义的局部变量或方法“批准”

是什么导致了错误,如何修复?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-03 03:35:46

您需要向helper方法approval_material方法传递一个参数。类似于:

代码语言:javascript
复制
def approval_material(approval)
  Material.find_by_id(approval.material_id)
end

然后根据你的观点,你可以这样说:

代码语言:javascript
复制
<% @approval.each do |approval| %>
    <td><%= approval_material(approval).m_name%></td>
<% end %>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39302864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档