【发布时间】:2017-08-18 22:08:30
【问题描述】:
我有一个很大的注册表单,所以我只是给你看一个“小”部分。
<div class="input-element uk-margin-small-bottom uk-flex">
<% if @user.errors[:first_name].any? %>
<div class="uk-inline uk-width-1-2" title="<%= @user.errors[:first_name].first %>" uk-tooltip="pos: left">
<span class="uk-form-icon" uk-icon="icon: user"></span>
<%= f.text_field :first_name, placeholder: "First name", class: "uk-input uk-form-danger" %>
</div>
<% else %>
<div class="uk-inline uk-width-1-2">
<span class="uk-form-icon" uk-icon="icon: user"></span>
<%= f.text_field :first_name, placeholder: "First name", class: "uk-input" %>
</div>
<% end %>
</div>
这是每个输入的逻辑,并且架构是相同的:
- 在字段出现错误的部分添加工具提示
- 添加一个 CSS 类来区分有无错误的字段
它导致大量 HTML / Ruby 代码用于相同的通用机制。我知道 Rails 提供了一些帮助程序来简化某些场景中的代码。
我的问题可以通过助手解决吗?如果可以,您认为我应该如何处理?
谢谢,
【问题讨论】:
-
您正在验证模型中所需的字段?您应该会出现一些错误,这可能是最容易调整的。
-
@RockwellRice 不确定我的解释是否不清楚,但从代码的角度来看没有问题。一切正常,错误消息显示正确。我唯一的问题是代码的可读性,我感觉在字段之间重复我自己。 如何提高助手的可读性?
标签: ruby-on-rails ruby