1.エラー文を表示したいビューファイルに記述する。
今回はnew.html.erbに記述する。〇〇は自分で命名する。
<%= render '〇〇/error_messages', model: f.object %>
2.〇〇/_error_messages.html.erb
ファイルを作り記述する。
#〇〇/_error_messages.html.erbの内容
<% if 変数A.errors.any? %>
<div id="error_explanation">
<ul>
<% 変数A.errors.full_messages.each do |message| %>
<li class="error-alert"><%= message %></li>
<% end %>
</ul>
</div>
<% end %>
3.もしデーターが保存できたら、同じコントローラー(今回はitemsコントローラー)のindexアクションに画面遷移して、保存できなかったらitems#newアクションを表示する。
def create
@item= Item.new(item_params)
if @item.save
redirect_to action: 'index'
else
render :new
end
end
4.これでデーター送信に失敗したら
new.html.erb
<%= render '〇〇/error_messages', model: f.object %>
を記述した箇所にエラー文が表示されるようになる