Ответ 1
Вероятно, у вас есть ограничение ограничений. Добавьте failOnError: true
к вашим параметрам метода сохранения. Тогда вы получите исключение, когда ваше сохранение завершится неудачно. (В качестве альтернативы вы можете проверить возвращаемое значение из save, и если оно ложно распечатывает p.errors.allErrors()
.)
Проверка и сохранение выполняются вместе. Если вы проверяете данные, переданные пользователем, которые были привязаны к некоторому объекту домена, то для проверки того, что сбой сохранения из-за неправильного ввода, идиоматическая задача - проверить возвращаемое значение save; отказ из-за недопустимого ввода не является исключительным поведением. Если вы хотите сохранить содержимое объекта и хотите, чтобы возникло исключение, если есть проблема, используйте failOnError
.
Подробнее о том, почему они спроектировали GORM, чтобы вы это сделали, см. в этой статье.