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

本文介绍如何在Rails应用中通过创建复用的表单片段,提高代码的可维护性和一致性。通过将new和edit视图中的form_with部分提取到独立的_form.html.erb文件中,简化了视图代码并方便了错误消息的统一处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在之前的例子中,我们发现在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' %>来代替。以后我们在实际项目开发的时候就可以这样操作了,简单明了,变更管理也非常方便,不易出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值