Ruby on Rails——一個完整的例子(七)

在之前的例子中,我們發現在new和edit兩個view中,都使用到了form_with這個Rails內置的helper,我們可以把這部分內容提取出來,作爲共通的部分供所有需要使用它的view使用。新建一個_form.html.erb的文件,將兩個文件中的form_with裝進來。

<%= form_with model: @article, local: true do |form| %>

 

  <% if @article.errors.any? %>

    <div id="error_explanation">

      <h2>

        <%= pluralize(@article.errors.count, "error") %> prohibited

        this article from being saved:

      </h2>

      <ul>

        <% @article.errors.full_messages.each do |msg| %>

          <li><%= msg %></li>

        <% end %>

      </ul>

    </div>

  <% end %>

 

  <p>

    <%= form.label :title %><br>

    <%= form.text_field :title %>

  </p>

 

  <p>

    <%= form.label :text %><br>

    <%= form.text_area :text %>

  </p>

 

  <p>

    <%= form.submit %>

  </p>

 

<% end %>

然後我們把new.html.erb和edit.html.erb中的這個共通的部分用<%= render 'form' %>來代替。以後我們在實際項目開發的時候就可以這樣操作了,簡單明瞭,變更管理也非常方便,不易出錯。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章