form_with 방법

5364 단어 Rails
Rails에서 모형과 연결된 창을 만들 때 formwith 방법을 사용하면 편리합니다.
_form.html.erb
<%= form_with(model: モデルのインスタンス) do |form| %>
//省略
<% end %>
form_with는 보기 조수의 일종이다.
뷰 도우미는 Rails에서 준비된 HTML을 생성하는 방법입니다.
다음 HTML은 다음과 같습니다.

<form action="/tasks" accept-charset="UTF-8" data-remote="true" method="post"><input name="utf8" type="hidden" value="✓"><input type="hidden" name="authenticity_token" value="qbu8RFLhyCuAElg1qr7MLYDEdiEINJdEe1JLQFLr7kyWPFiHCEZKszOrvwON33s9CqGz7njGpBasOzrpYkb8/w==">
  <div class="task_name">
    <label for="task_name">タスク名</label>
    <input type="text" name="task[task_name]">
  </div>
  <div class="task_content">
    <label for="task_content">内容</label>
    <input type="text" name="task[content]">
  </div>
//省略
  <input type="submit" name="commit" value="Create Blog" data-disable-with="Create Task">
</form>
뷰 도우미를 사용하여 다음과 같이 설명할 수 있습니다.
_form.html.erb
<%= form_with(model: @task, local: true) do |form| %>
  <div class="task_name">
    <%= form.label :タスク名 %>
    <%= form.text_field :task_name %>
  </div>
  <div class="task_content">
    <%= form.label :内容 %>
    <%= form.text_field :content %>
  </div>
  <%= form.submit %>
<% end %>
form_with 방법은 모델 클래스의 실례를 통해 모델 옵션의 매개 변수로 사용해야 합니다.
form_with는 모델 실례를 바탕으로'form을 보내면 어떤 요청을 보낼지'를 확인합니다.
이번 예를 들면...<%= form_with(model: Task.new) %>의 설명에 의하면
form_with는 POST에서/tasks URL을 재생하는 HTTP 메서드를 자동으로 생성합니다.
이 탑sk.new는 컨트롤러에 @task = Task.new 등의 형식으로 실례 변수에 넣기 때문에formwith는 일반적으로 <%= form_with(model: @task) %> 사용하는 방법입니다.
이외에formwith 메서드는 기본적으로 ")"이 아니라 자바스크립트의 자원을 가져오려고 합니다
local: 진짜이기 때문에 HTML을 발행해야 합니다.
form 탭으로 출력해야 하기 때문에formwith 방법은 <%= %>로 묶어야 한다.
창 위젯form.label는 HTML의 label 태그를 만드는 방법입니다.form.text_field
속성 (type) 을 text로 지정하고 HTML의 input 탭 (자유 입력 표시줄) 을 만드는 방법입니다.form.submit
submit에서 속성 (type) 을 지정하여 HTML의 input 탭 (발송 단추) 을 만드는 방법입니다.
각각 div 라벨로 괄호를 치는 것은 줄을 바꾸기 위해서이다.div 라벨, br 라벨로 묶지 않으면 가로줄이 됩니다.

좋은 웹페이지 즐겨찾기