, при каких сценариях объект проходит проверку, но выдает ошибку при сохранении.
Ограничения класса домена могут проверять что угодно, поэтому, если «вызов, который они проверяют», меняется между вызовамиvalidate()
и save()
, тогда вполне возможно, что первый преуспеет, а второй потерпит неудачу.
Вот очень простой такой пример
Book.ISBN
имеет уникальное ограничение myBook.validate()
вызывается и передает - другая книга с тем же ISBN, что и
myBook
, сохраняется myBook.save()
не выполняется, поскольку теперь не выполняется уникальное ограничение для ISBN