Проверки Datamapper, пустые ошибки

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

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

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

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

<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?

Спасибо


person ms123    schedule 05.09.2011    source источник


Ответы (1)


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

User.raise_on_save_failure = true - чтобы все пользовательские инстансы взрывались.

DataMapper.raise_on_save_failure = true - чтобы ВСЁ взорвалось, если не удалось сохраниться.

Определения источников: dm-core/model. rb и dm-core /resource.rb

person Tam Borine    schedule 04.10.2016