参数[:评论],作者给出:评论



我想了解作者在哪里给出:comment,它来自这种形式

    <h2>Add a comment:</h2>
<%= 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 %>

阶级和行动是

  class CommentsController < ApplicationController
  def create
    @post = Post.find(params[:post_id])
    @comment = @post.comments.create(params[:comment])
    redirect_to post_path(@post)
  end
end

作者在哪里给出:评论? 他怎么能收到而不在表格中声称?

因为form_for正在对类 Comment 的对象进行操作,所以为字段生成的名称命名空间了 params[:comment] 中的参数。

您可以通过将:as选项传递给 form_for 来更改此设置,但这通常不是必需的。

最新更新