我正在编写一个处理多个模型的表单。一些关于如何实现这个功能的示例使用ActionView::Helpers::FormHelper::label,而另一些则使用ActionView::Helpers::FormTagHelper::label_tag,我不太理解它们之间的区别。
在我的特定情况下,两者似乎产生相同的输出:
在我的特定情况下,两者似乎产生相同的输出:
<% form_for :post, :url => { :action => 'create' } do %>
<p>
<%= label_tag 'post_type' %><br />
<%= text_field :post, :post_type %>
</p>
<p>
<%= label :post, :parent_post_id %><br />
<%= text_field :post, :parent_post_id %>
</p>
...
渲染:
<p>
<label for="post_type">Post type</label><br />
<input id="post_post_type" name="post[post_type]" size="30" type="text" />
</p>
<p>
<label for="post_parent_post_id">Parent post</label><br />
<input id="post_parent_post_id" name="post[parent_post_id]" size="30" type="text" />
</p>