私はこのサインアップフォームを持っていますので、私はちょうどあなたに "小さな"部分を示しています。コードを明確にするためにヘルパーを使用してください
<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私の説明ではわかりませんが、コードの観点からは問題はありません。すべて正常に動作しており、エラーメッセージが正しく表示されます。 私の唯一の問題はコードの可読性であり、フィールド間で自分自身を繰り返す気がします。 **ヘルパーとの可読性を向上させるにはどうすればいいですか?** –