嗨从rails 4.0.0更新到4.1.0后出现此错误:
wrong number of arguments (1 for 0)
在视图代码中:
<%= user_progress membership.progress %>
它来自membership.rb
Lesson.all(:conditions => {:course_object_id => self.course_id}, :order => "lessons.sort ASC, lessons.start_date").each do | lesson |
all_lessons[lesson.id.to_s] = lesson
all_lesson_ids << lesson.id.to_s
end
这个剪了什么错?
答案 0 :(得分:3)
您应该改变构建查询的方式:
Lesson.all(:conditions => {:course_object_id => self.course_id}, :order => "lessons.sort ASC, lessons.start_date")
到
Lesson.where(:course_object_id => self.course_id).order("lessons.sort ASC, lessons.start_date")
所以它看起来像这样:
Lesson.where(:course_object_id => self.course_id).order("lessons.sort ASC, lessons.start_date").each do | lesson |
all_lessons[lesson.id.to_s] = lesson
all_lesson_ids << lesson.id.to_s
end
祝你好运!
答案 1 :(得分:1)