意外的布局输出 - RoR 3.0.1.1

时间:2012-03-29 22:04:50

标签: ruby-on-rails layout controller

我最近开始学习RoR。我的问题是当我在html.erb文件中调用帖子时,我得到了一个意外的输出。

1 class TestSiteController < ApplicationController 
2   def Home 
3     @greeting = 'Hello' 
4     @posts = Post.all 
5
6     respond_to do |format|
7       format.html 
8       format.xml  { render :xml => @posts }
9       format.json { render :json => @posts }
10     end
11   end    


1 <h1>testsite#home</h1>
2 <%= link_to "contact", about_us_path %>
3 
4 <table>
5 <%= @posts.each do |p| %> 
6 <tr>
7   <td><%= p.topic %></td>
8   <td><%= p.post %> </td> 
9 </tr>
10 <% end %>
11 </table>

我在下面找到了我想要的帖子列表,但在列表的顶部是我不想输出的帖子数组。任何人都知道为什么会这样吗?

以下是输出:

//Unwanted array
[#<Post id: 1, topic: "Rainy Day", post: "Today was a rainy day", created_at: "2012-03-29    21:22:43", updated_at: "2012-03-29 21:22:43">, #<Post id: 2, topic: "It works!", post: "Saving   data from the rails console to the mysql db ...", created_at: "2012-03-29 21:25:18", updated_at: "2012-03-29 21:25:18">]
//List start
Rainy Day   Today was a rainy day
It works!   Saving data from the rails console to the mysql db work! I'm so ecstatic! :D

1 个答案:

答案 0 :(得分:1)

您正在输出@posts的内容,因为您正在使用<%=。您应该将其更改为<%

<% @posts.each do |p| %>