更改rails text_field表单构建器类型

Rya*_*yan 4 forms html5 ruby-on-rails

我一直在寻找在HTML5的形式提供的新选项,如声明输入类型为"电子邮件","网址"和"号码",如所描述这里.

如何将这些与轨道表单构建器一起使用?我试过了

<% form_for @user do |f| %>
  <%= f.email :email, {:placeholder => 'user@domain.com'} %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

但这不起作用.我也试过了

<% form_for @user do |f| %>
  <%= f.text_field :email, {:placeholder => 'user@domain.com', :type  => :email} %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

但是类型仍然是"文本"而不​​是被覆盖.是否可能,或者这是否需要在Rails中解决?

rni*_*son 6

看起来目前有一个用于添加HTML5表单输入类型的打开票证和补丁.如果您不能等到补丁被接受,您可以通过冻结actionpack gems并应用补丁或制作添加额外方法的初始化程序来本地应用补丁.

当然另一个选择是在没有表单助手的情况下手动添加字段:

<% form_for @user do |f| %>
  <%= tag(:input, {:type => :email, :value => f.object.email} %>
<% end %>
Run Code Online (Sandbox Code Playgroud)


Ada*_*all 5

现在有一个email_field标签.