关于ruby教程的form_for问题

时间:2013-07-07 03:40:01

标签: ruby-on-rails ruby syntax-error form-for

下午好,

我开始使用rails,因为我正在跟随http://guides.rubyonrails.org/getting_started.html的指南,我似乎遇到了障碍。

当我尝试使用form_for帮助器将数组作为参数传递时(如指南第6.4节所述)我收到以下错误

  

显示第11行引用的[MyPath] /app/views/posts/show.html.erb:

     

[MyPath] /app/models/comment.rb:3:语法错误,意外的keyword_end ,?期待$ end

正在呈现的视图的代码是

<p>
  <strong>Title:</strong>
  <%= @post.title %>
</p>

<p>
  <strong>Text:</strong>
  <%= @post.text %>
</p>

<%= form_for([@post, @post.comments.build]) do |f| %>
  <p>
    <%= f.label :commenter %><br />
    <%= f.text_field :commenter %>
  </p>
  <p>
    <%= f.label :body %><br />
    <%= f.text_area :body %>
  </p>
  <p>
    <%= f.submit %>
  </p>
<% end %>

<%= link_to 'Back', posts_path %>
| <%= link_to 'Edit', edit_post_path(@post) %>

这就是帖子模型的样子

class Post < ActiveRecord::Base
  has_many :comments
  validates :title, presence: true,
            length: { minimum: 5 }

end

这就是评论模型的样子

Class Comment < ActiveRecord::Base
  belongs_to :post
end

可能导致此问题的原因是什么? “结束”标签似乎正确匹配。

仅在需要时提供额外信息

ruby​​ -v

ruby​​ 1.9.3p429(2013-05-15修订版40747)[x86_64-darwin12.3.0]

rails -v

Rails 4.0.0

感谢您的帮助。我不确定是否需要更多信息,但请随时告诉我。

1 个答案:

答案 0 :(得分:0)

错字就在这里 -

Class Comment <应该是class Comment <