当前位置:  开发笔记 > 编程语言 > 正文

得到奇怪的'未定义方法'错误

如何解决《得到奇怪的'未定义方法'错误》经验,为你挑选了1个好方法。

为#获取"undefined method` each'"

这是观点:

<% @current_marks.each do |m| %>
  
    <%= m.subject %>
    <%= m.professor %>
    <%= m.semester %>
    <%= m.points %>
  
<% end %>

和控制器:

def show
  @student = Student.find(params[:id])
  @students = Student.all
  @current_marks = Mark.find_by! student_id: @student.id
rescue ActiveRecord::RecordNotFound
  redirect_to :action => 'set_marks'
end

我已经检查了一个Id param并且它是正确的.我Mark也在DB中有正确的记录student_id.如何在@current_marks没有任何错误的情况下致电?



1> punitcse..:

find_by 会给你第一个匹配记录不是一个集合,所以你不能把每个上that.Instead你可以使用:如果你需要的所有符合条件的记录

 @current_marks = Mark.where student_id: @student.id

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有