Валидации Datamapper, пустые ошибки - PullRequest
6 голосов
/ 05 сентября 2011

У меня есть простая модель со следующими свойствами:

property :title, String,
  :required => true,
  :length => 1..200

property :body, String,
  :required => true,
  :length => 1..200

Когда я сохраняю его (используя метод save) с заголовком, который не проверяется, он не сохраняется, но я получаю следующий объект:

<DataMapper::Validations::ValidationErrors:0x00000003133e10
 @resource=#<Pun @id=nil @image="" @title="" @body="dsfsdf" @description=nil
 @published=nil @user_id=1 @round_id=nil>, @errors={}>

Таким образом, хэш ошибок пуст. Однако, когда свойство body пустое, хэш ошибок определяет его проблему.

Есть идеи о том, почему хэш ошибок пуст, когда он включает свойство: title?

Спасибо

1 Ответ

0 голосов
/ 04 октября 2016

Итак, knowtheory написал в комментарии к блогу (в 2010 году), что некоторые вспомогательные методы были созданы для компенсации этого.Его примеры для модели User:

User.raise_on_save_failure = true - для взрыва всех пользовательских экземпляров.

DataMapper.raise_on_save_failure = true - для взрыва ВСЕГО, если не удастся успешно сохранить.*

Исходные определения: dm-core / model.rb и dm-core / resource.rb

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...