我以为我正在关注这个RoR教程,但显然不是。他们指示我们将此代码写入apps/views/index.html.erb
<h1>Listing posts</h1>
<table>
<tr>
<th>Name </th>
<th>Title </th>
<th>Content </th>
</tr>
<% for post in @posts %>
<tr>
<td><%=h post.name %></td>
<td><%=h post.title %></td>
<td><%=h post.content %></td>
<td><%= link_to'Show', post %></td>
<td><%= link_to 'Edit', edit_post_path(post) %></td>
<td><%= link_to 'Destroy', post,
:confirm => 'Are you sure?',
:method => :delete %></td>
</tr>
<% end %>
</table>
<br />
<% link_to 'New Post', new_post_path %>
它在第10行附近引发了一个错误,但我不太清楚确切的问题是什么。有人可以为我阐明情况吗?
错误是
syntax error, unexpected ')', expecting kDO_COND or ':' or '\n' or ';'
....concat(( for post in @posts ).to_s); @output_buffer.concat ...
答案 0 :(得分:3)
只要@posts
是具有Post
name
和title
属性的对象集合(大概是content
个对象),您就拥有标准的RESTful为资源生成的路线,您的视图很好。看看你的控制器。
编辑: for ... in语法需要do。 for post in @posts do
...
所以错误很有帮助 - 关于KDO
...