关于形式的问题

时间:2009-08-10 19:19:06

标签: ruby forms

[@ post,Comment.new] 构造的字面意思是什么?我正在使用它(在播客中看到,或在其他地方看到),但我仍然不太明白它是什么意思?如果我们点击“提交”按钮会发生什么事情(确实,评论已添加,但我对内部机制很感兴趣,它与提到的构造有什么联系)?

<% form_for [@post,Comment.new] do |f| %>
   <p>
      <%= f.label :message %><br />
      <%= f.text_area :message %>
   </p>
   <p>
      <%= f.submit 'Post comment' %>
   </p>
<% end %>

1 个答案:

答案 0 :(得分:0)

虽然标准文档中并不清楚,但有些人发布了有用的评论,阐明了它的功能。示例:http://apidock.com/rails/ActionView/Helpers/FormHelper/form_for

与生成正确名称空间中的路由,或者因为特定资源的路径涉及两个组件有关。

在你引用的情况下,路线将是:

/posts/:post_id/comments/

编辑帖子评论时:

/posts/:post_id/comments/:id

这与仅提供Comment.new所产生的路线形成对比:

/comments/