【问题标题】:Change rails text_field form builder type更改 rails text_field 表单构建器类型
【发布时间】:2011-01-01 12:04:01
【问题描述】:

我一直在研究 HTML5 表单中可用的新选项,例如将输入类型声明为“email”、“url”和“number”,如 here 所述。

如何将它们与 rails form builder 结合使用?我试过了

<% 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 本身中解决?

【问题讨论】:

    标签: ruby-on-rails forms html


    【解决方案1】:

    目前似乎有an open ticket and patch for adding the HTML5 form input types。如果您不能等到补丁被接受,您可以通过冻结 actionpack gem 并应用补丁或制作一个添加额外方法的初始化程序来在本地应用补丁。

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

    <% form_for @user do |f| %>
      <%= tag(:input, {:type => :email, :value => f.object.email} %>
    <% end %>
    

    【讨论】:

    • 感谢您的帮助。我按照您的建议手动添加了该字段,代码显然需要更多属性,例如 :email, :id => 'user_email', :name => 'user[email]', :placeholder => 'required', :value => f.object .email }) %>
    【解决方案2】:

    现在有一个email_field tag

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-16
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-21
      • 2018-03-23
      相关资源
      最近更新 更多