python
>> user = User.new
>> user.save    #Génération de message d'erreur
=> false
>> user.error.full_messages  
=> [Failed"", "invalid"]
Lors de l'enregistrement d'un objet, un message d'erreur est généré en tant qu'élément du tableau au moment où false est renvoyé.
erb
<% @user.errors.full_messages.each do |msg| %>
  <%= msg %>
<% end %>
Chaque élément du tableau peut être récupéré et affiché avec chaque instruction.
class="field_with_errors"
Il englobe automatiquement les parties d'entrée de la partie d'erreur.
Lors de l'utilisation de partiels, il est implémenté de manière à pouvoir gérer n'importe quel objet.
ruby:shared/_error_messages.html.erb
<% if object.errors.any? %>
  <div id="error_explanation">
    <div class="alert alert-danger alert-form-extend" role="alert">
      <%= object.errors.count %>Il y a une erreur
    </div>
    <ul>
      <% @user.errors.full_messages.each do |msg| %>
        <li><%= msg %></li>
      <% end %>
    </ul>
  </div>
<% end %>
ruby:users/new.html.erb
<%= form_with(model: @user, url: users_path, local: true) do |form| %>
  <%= render 'shared/error_messages', object: form.object %>
users_controller.rb
def create
  @user = User.new(user_params)
  if @user.save
    ~~
  else
    render 'new'
  end
end
application.scss
#error_explanation {
  color: red;
  ul {
    color: red;
    padding-bottom: 0;
  }
}
.field_with_errors .form-control { 
  border-color: red;
}