查看查询以“puts”返回的结果

时间:2013-03-06 22:25:58

标签: ruby-on-rails ruby-on-rails-3.2

我在我的控制器中有一个这样的查询,我将它作为JSON传递给JBuilder等等......但是JBuilder什么都没显示!它只显示{}

@students =  Students.top_students.joins(:program).where("programs.organization_id = ?", params[:id]).limit(10)

所以在它到达那里之前我只是想确保它获得正确的数据,它的连接是正确的等等。 我可以这样做吗?

如果我只是说puts @students它会打印出类似的内容,我想知道每个内容是什么。

#<Student:0x007fd33ebe57a8>
#<Student:0x007fd33ebe4d08>
#<Student:0x007fd33ebe3ea8>

1 个答案:

答案 0 :(得分:1)

to_s上定义Student方法,您的puts输出会更有用。我建议使用inspect

def to_s
  inspect
end

或者,您可以遍历@students并执行更多输出:

@students.each do |student|
  puts "Id: #{student.id}"
  puts "Name: #{student.name}"
  ...
end

或者如果你想保持简单,快速collect就可以了:

puts @students.collect(&:inspect)