为什么这个rails视图在.each do循环结束时吐出一个原始数组?
我在Rails视图中被这个奇怪的输出所困扰。 这是我的模型:
class Comment < ActiveRecord::Base belongs_to :post end
这是我观点的相关部分。 我已经将问题分离到这个代码块,特别是在最后一次迭代之后和循环结束之前发生的任何事情 。 如果我注释掉每次迭代中打印的实际文本,原始数组仍然会打印出来。
Comments
Commenter:
这是奇怪的输出(带样本注释。):
评论者:迈克尔
好post。
评论者:迈克尔
好post。
评论者:迈克尔
测试。
评论者:约翰
arrays还在打印吗?
[#, #, #, #]
最后,这是开发日志的阅读方式。 他们都看起来像这样。
Started GET "/posts/1" for 127.0.0.1 at 2011-01-11 22:01:52 -0600 Processing by PostsController#show as HTML Parameters: {"id"=>"1"} [1m[36mPost Load (0.1ms)[0m [1mSELECT "posts".* FROM "posts" WHERE ("posts"."id" = 1) LIMIT 1[0m [1m[35mComment Load (0.3ms)[0m SELECT "comments".* FROM "comments" WHERE ("comments".post_id = 1) Rendered posts/show.html.erb within layouts/application (57.5ms) Completed 200 OK in 73ms (Views: 61.1ms | ActiveRecord: 0.4ms)
有人知道造成这种情况的原因吗? 如果这是PHP,我猜我在代码中的某处留下了print_r。 但它不是,我没有做那样的事情。
尝试删除<%= @post.comments.each do |comment| %>
<%= @post.comments.each do |comment| %>
。 仅当方法本身输出某些东西时才需要等于。 在这种情况下,您只是使用它来迭代集合。