Rails - 如何在simple_form_for表单中添加自己的标签?

时间:2014-09-02 20:48:55

标签: ruby-on-rails ruby view simple-form

我正在使用simple_form_for来生成表单。

这是如何呈现输入的标准方法:

    <%= f.input :password, input_html: { class: 'textinput' }, :required => true, :autofocus => true, :placeholder => 'this is heavy' %>

simple_form的官方Github页面上以这种方式显示:

    <%= f.input :password, label: 'Password (at least 8 characters)', input_html: { class: 'textinput' }, :required => true, :autofocus => true, :placeholder => 'this is heavy' %>

但是当我这样设置时,标签仍然显示密码,而不是密码(至少8个字符)

我做错了什么?

2 个答案:

答案 0 :(得分:0)

尝试在标签中使用双引号而不是单引号。

<%= f.input :password, label: "Password (at least 8 characters)", input_html: { class: 'textinput' }, required: true, autofocus: true, placeholder: "this is heavy" %>

答案 1 :(得分:0)

您的标签应与您的输入分开。

    <%= f.label :password, "Password (at least 8 characters)" %>
    <%= f.input :password, input_html: { class: 'textinput' }, :required => true, :autofocus => true, :placeholder => 'this is heavy' %>

这也显示在Simple Form Git Repo

Simple Form还允许您使用label,hint,input_field,error和full_error助手(请查看每种方法的rdocs以获取更多信息):

<%= simple_form_for @user do |f| %>
  <%= f.label :username %>
  <%= f.input_field :username %>
  <%= f.hint 'No special characters, please!' %>
  <%= f.error :username, id: 'user_name_error' %>
  <%= f.full_error :token %>
  <%= f.submit 'Save' %>
<% end %>