使用Rails和Mongoid。
放下解释代码会更容易:
foo = User.all.to_a
尝试在我的Javascript中格式化为可接受的数据。但在我的迭代中:
var dump = []
<%= foo.each do |boop| %>
dump.push( /*some formatted data using boop/*)
<% end %>
结果转储包含可接受的格式,但文档对象也添加在数组的末尾。
例如,使用rails控制台:
foo.each do |boop|
print "#{boop.email}\n"
end
打印出电子邮件。然后在最后,在一行中打印出每个文档对象。
我的输出来自上面:
hobbes203@gmail.com
...
// Prints out emails until end
[#<User _id: 50edd7fe021823ea20000001, _type: nil, email: "hobbes203@gmail.com", password_digest: "$2a$10$xXixV8MlqGco0Qq7j5jQaOkXBWQ9cLgQ7yEOtQruxq.HiYg8GOJ4y", phone: nil, firstName: nil, lastName: nil, employNum: nil, dateMade: nil, role_id: "50edd7da021823db20000001">, ... #prints out rest of users in line.
db中的数组大小和计数是相同的。我还使用last检查了数组。我想通过获取数组的长度来使用计数迭代器,但我很好奇为什么会发生这种情况。
答案 0 :(得分:1)
您看到的打印输出是操作的返回值。例如。
> Object.save
=> true
你可以通过在块结束后传递“; 0”来抑制它,这仍然会打印输出,但会将返回值改为零。
foo.each {|boop| puts "#{boop.email}\n" };0