В моем приложении пользователь может принадлежать команде.Капитан может пригласить любого пользователя в любую команду, если этот пользователь еще не принадлежит команде.У меня есть модель приглашения, которая проверяет, принадлежит ли этот пользователь к команде, перед отправкой приглашения.
class Invite < ApplicationRecord
belongs_to :team
belongs_to :user
before_create :check_membership
def check_membership
@memberships = self.user.teams.map { |t| t.id }
if @memberships.include?(self.team.id)
raise 'That user is already on a team'
end
end
end
Если пользователь принадлежит к команде и приглашен капитаном, я хочу, чтобы былсообщение об ошибке, предупреждающее капитана о том, что он уже находится в команде.
Для этого я создал метод, позволяющий проверить, принадлежит ли пользователь команде, и, если он это делает, вызвать исключение.Я хотел бы показать это исключение в представлении, поместив его в форму.
<% if invite.errors.any? %>
<ul>
<% test.errors.full_messages.each do |message| %>
<li><%= message %></li>
<% end %>
</ul>
<% end %>
Когда я отправляю приглашение тестовому пользователю, оно просто показывает это сообщение об ошибке на типичной странице ошибки rails, а непоказывать сообщение об ошибке над формой при повторной визуализации.Как сделать так, чтобы это сообщение об исключении отображалось в форме после его отправки?