对于什么可能是一个简单的问题非常困惑。试图通过遍历它来显示我的表的一列,但不知怎的,在此之前我的整个表都显示出来。
输出:
所有我的故事
[#Ttory id:1,思想:nil,created_at:" 2016-02-11 03:20:07",updated_at:" 2016-02-11 03:20:07& #34;,#Story id:2,思考:"你好我的名字是帕特里克",created_at:" 2016-02-11 03:22:04",updated_at:&#34 ; 2016-02-11 03:22:04",#Story id:3,思想:" Dennis很酷",created_at:" 2016-02-11 03:22:37& #34;,updated_at:" 2016-02-11 03:22:37"]
思想
你好,我的名字是帕特里克
丹尼斯很酷
控制器代码:
class StoriesController < ApplicationController
def index
@stories = Story.all
end
def show
@story = Story.find(params[:id])
end
def new
@story = Story.new
end
def create
@story = Story.new(story_params)
if @story.save
redirect_to @story
else
render 'new'
end
end
private
def story_params
params.require(:story).permit(:thought)
end
end
查看代码:
<h1>All My Stories</h1>
<table>
<tr>
<th>Thoughts</th>
</tr>
<%= @stories.each do |s| %>
<tr>
<td><%= s.thought %>
</tr>
<% end %>
</table>
使用rails generate model Story thought:string
答案 0 :(得分:1)
那是您在=
中<%=
的b / c,它将打印@stories
。
试试这个。
<% @stories.each do |s| %>
<tr>
<td><%= s.thought %>
</tr>
<% end %>
答案 1 :(得分:-1)
删除视图中 @stories 之前的 = 。它应该是这样的:
<% @stories.each do |s| %>
# your code here
<% end %>