我一直在查看HTML5表单中提供的新选项,例如将输入类型声明为“email”,“url”和“number”,如here所述。
如何将这些与rails form构建器一起使用?我试过了
<% form_for @user do |f| %>
<%= f.email :email, {:placeholder => 'user@domain.com'} %>
<% end %>
但这不起作用。我也试过了
<% form_for @user do |f| %>
<%= f.text_field :email, {:placeholder => 'user@domain.com', :type => :email} %>
<% end %>
但是类型仍然是“文本”而不是被覆盖。是否可能,或者这是否需要在Rails中解决?
答案 0 :(得分:6)
看起来目前有an open ticket and patch for adding the HTML5 form input types。如果您不能等到补丁被接受,您可以通过冻结actionpack gems并应用补丁或制作添加额外方法的初始化程序来在本地应用补丁。
当然另一个选择是在没有表单助手的情况下手动添加字段:
<% form_for @user do |f| %>
<%= tag(:input, {:type => :email, :value => f.object.email} %>
<% end %>
答案 1 :(得分:5)
现在有email_field
tag。