在RailsCast中有一个
<%= text_field_tag :email, params[:email] %>
此代码输出以下html。
<input id="email" name="email" type="text">
即使我删除了第二个段params[:email]
,此代码也会输出相同的html代码。
我正在使用rails 4,本教程是使用rails 3。
这是vesions之间的区别?
或者还有另一个原因params[:email]
?
答案 0 :(得分:0)
第二个参数是实际放置在文本字段内的文本。我们说params[:email] = 'email text'
,然后
<%= text_field_tag :email, params[:email] %>
产量
<input id="email" name="email" type="text">email text</input>
如果params[:email] = nil
那么你会得到
<input id="email" name="email" type="text"></input>
第一个参数是名称,第二个参数是值(本例中为文本),第三个值是包含选项的参数哈希。你有更具体的问题吗?您可以在此处查看v4的API:http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-text_field_tag