Какой альтернативный синтаксис для ActiveRecord :: RecordNotFound в Rails 3 - PullRequest
2 голосов
/ 24 февраля 2010

С введением ActiveModel в Rails 3 появился новый метод вызова ActiveRecord :: RecordNotFound. ActiveModel :: RecordNotFound?

Ответы [ 2 ]

0 голосов
/ 25 сентября 2012

ActiveModel - это набор модулей и соглашений, которые должны быть реализованы, основной целью является обеспечение общего интерфейса для картографов, не более, не менее. Так что нет, ActiveRecord::RecordNotFound остается ActiveRecord::RecordNotFound. RecordNotFound не имеет смысла для каждого картографа: например, с Mongoid вы получите DocumentNotFound (ну, Mongoid::Errors::DocumentNotFound).

0 голосов
/ 25 сентября 2012

Это определение ( 1 ) ActiveModel:

ActiveModel - это класс, который должен быть реализован каждым ORM, чтобы позволить Rails генерировать настроенный код контроллера.

ActiveRecord реализует ActiveModel. ActiveRecord вызывает свое исключение ActiveRecord :: RecordNotFound, когда не может найти запись с заданным идентификатором или набором идентификаторов ( 2 ) в базе данных.

Это означает, что не может быть такого исключения, как ActiveModel :: RecordNotFound.

...