表單元素的助手
核取方塊
<%= check_box_tag(:pet_dog) %>
<%= label_tag(:pet_dog, "I own a dog") %>
<%= check_box_tag(:pet_cat) %>
<%= label_tag(:pet_cat, "I own a cat") %>
這將生成以下 html
<input id="pet_dog" name="pet_dog" type="checkbox" value="1" />
<label for="pet_dog">I own a dog</label>
<input id="pet_cat" name="pet_cat" type="checkbox" value="1" />
<label for="pet_cat">I own a cat</label>
單選按鈕
<%= radio_button_tag(:age, "child") %>
<%= label_tag(:age_child, "I am younger than 18") %>
<%= radio_button_tag(:age, "adult") %>
<%= label_tag(:age_adult, "I'm over 18") %>
這會生成以下 HTML
<input id="age_child" name="age" type="radio" value="child" />
<label for="age_child">I am younger than 18</label>
<input id="age_adult" name="age" type="radio" value="adult" />
<label for="age_adult">I'm over 18</label>
文字區域
要建立更大的文字框,建議使用 text_area_tag
<%= text_area_tag(:message, "This is a longer text field", size: "25x6") %>
這將建立以下 HTML
<textarea id="message" name="message" cols="25" rows="6">This is a longer text field</textarea>
數字欄位
這將建立一個 input<type="number">
元素
<%= number_field :product, :rating %>
要指定一系列值,我們可以使用 in:
選項
<%= number_field :product, :rating, in: 1..10 %>
密碼欄位
有時你希望遮蔽使用者鍵入的字元。這將產生一個 <input type="password">
<%= password_field_tag(:password) %>
電郵域
這將創造一個 <input type="email">
<%= email_field(:user, :email) %>
電話域
這將創造一個 <input type="tel">
。
<%= telephone_field :user, :phone %>
約會助手
-
input[type="date"]
<%= date_field(:user, :reservation) %>
-
input[type="week"]
<%= week_field(:user, :reservation) %>
-
input[type="year"]
<%= year_field(:user, :reservation) %>
-
input[type="time"]
<%= time_field(:user, :check_in) %>