Ruby on Rails
양식 도우미
수색…
소개
Rails는 양식 마크 업 생성을위한보기 도우미를 제공합니다.
비고
-
date
,datetime
,datetime-local
,time
,month
및week
포함한 날짜 입력 유형은 FireFox에서 작동하지 않습니다. -
input<type="telephone">
은 Safari 8에서만 작동합니다. -
input<type="email">
은 Safari에서 작동하지 않습니다.
양식 만들기
form_tag
도우미를 사용하여 양식을 만들 수 있습니다.
<%= form_tag do %>
Form contents
<% end %>
이렇게하면 다음 HTML이 생성됩니다.
<form accept-charset="UTF-8" action="/" method="post">
<input name="utf8" type="hidden" value="✓" />
<input name="authenticity_token" type="hidden" value="J7CBxfHalt49OSHp27hblqK20c9PgwJ108nDHX/8Cts=" />
Form contents
</form>
이 양식 태그가 hidden
입력 필드를 만들었습니다. 이는 양식이 양식이 없이는 성공적으로 제출 될 수 없기 때문에 필요합니다.
authenticity_token
이라는 두 번째 입력 필드는 cross-site request forgery
에 대한 보호를 추가합니다.
검색 양식 만들기
검색 양식을 만들려면 다음 코드를 입력하십시오.
<%= form_tag("/search", method: "get") do %>
<%= label_tag(:q, "Search for:") %>
<%= text_field_tag(:q) %>
<%= submit_tag("Search") %>
<% end %>
-
form_tag
: 이것은 폼을 생성하기위한 기본 도우미입니다. 첫 번째 매개 변수 인/search
는 작업이고 두 번째 매개 변수는 HTTP 메서드를 지정합니다. 검색 양식의 경우get
메소드를 항상 사용하는 것이 중요합니다. -
label_tag
:이 도우미는 html<label>
태그를 만듭니다. -
text_field_tag
:text
형식의 입력 요소를 만듭니다. -
submit_tag
:submit
타입의 input 요소를 생성합니다.
양식 요소에 대한 도우미
확인란
<%= 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:
옵션을 사용할 수 있습니다 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) %>
쓰러지 다
표준 예 : @models = Model.all select_tag "models", options_from_collection_for_select (@ 모델, "id", "name"), {}
이렇게하면 다음 HTML이 생성됩니다. David
마지막 인수는 다음을 허용하는 옵션입니다. {multiple : false, disabled : false, include_blank : false, prompt : false}
더 많은 예제가 있습니다 : http://apidock.com/rails/ActionView/Helpers/FormTagHelper/select_tag