Ruby on rails Michael Hartl'中第491页隐藏字段方法的用途是什么;什么是Rails教程?

Ruby on rails Michael Hartl'中第491页隐藏字段方法的用途是什么;什么是Rails教程?,ruby-on-rails,ruby-on-rails-3,railstutorial.org,Ruby On Rails,Ruby On Rails 3,Railstutorial.org,(首先,我想指出的是,这个问题只有在你读过这本书或者手里拿着这本书的情况下才能得到答案,这样你才能阅读第491页的相关部分,因为我只能提取一小部分并粘贴在这里。对此我深表歉意。) 这是第491页书中使用的_follow.html.erb部分: <%= form_for current_user.relationships. build(:followed_id => @user.id) do |f| %> <div>

(首先,我想指出的是,这个问题只有在你读过这本书或者手里拿着这本书的情况下才能得到答案,这样你才能阅读第491页的相关部分,因为我只能提取一小部分并粘贴在这里。对此我深表歉意。)

这是第491页书中使用的_follow.html.erb部分:

<%= form_for current_user.relationships.
                          build(:followed_id => @user.id) do |f| %>
<div><%= f.hidden_field :followed_id %></div>
<div class="actions"><%= f.submit "Follow" %></div> 
<% end %>
@user.id)do | f |%>
它用于创建“跟随”按钮以跟随其他用户

然后他在解释“f.hidden_场”时说

最后,您会注意到表单除了按钮之外没有任何内容,但是它仍然需要发送后面的\u id,这是我们通过隐藏的\u字段实现的

我的问题是:

为什么我们需要一个隐藏的\u字段来发送下面的\u id?在我看来,这条线

<%= form_for current_user.relationships.
                      build(:followed_id => @user.id) do |f| %>
@user.id)do | f |%>

已经分配了:followed\u id属性,对吗?

我认为这两部分代码是不同的

@user.id)do | f |%>
此行为表单创建一条新记录


此代码创建窗体的实际参数


-->你可能想读这篇文章来了解更多关于form_for

的信息,我不想在这一点上粗鲁,但你能不能重新组织一下你的英语,让我能更清楚地理解你?谢谢,达米恩布尔兹。试着说清楚一点。第一行为表单_构建一个临时对象,供方法在创建表单时使用。在这种情况下,是一种关系。第二行使用他刚刚构建的临时对象中的数据构建隐藏字段。