Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
随着 Rails 3 中 ActiveModel 的引入,调用 ActiveRecord::RecordNotFound 的新方法是什么。ActiveModel::RecordNotFound ?
ActiveModel 是一组要实现的模块和约定,主要目标是为映射器提供一个通用接口,不多也不少。所以不,ActiveRecord::RecordNotFound留下来ActiveRecord::RecordNotFound。RecordNotFound对每个映射器都没有意义:例如,使用 Mongoid,您将拥有DocumentNotFound(嗯,Mongoid::Errors::DocumentNotFound)。
ActiveRecord::RecordNotFound
RecordNotFound
DocumentNotFound
Mongoid::Errors::DocumentNotFound
这是ActiveModel的定义(1 ):
ActiveModel 是一个由每个 ORM 实现的类,以允许 Rails 生成自定义的控制器代码。
ActiveRecord 实现 ActiveModel。当 ActiveRecord 在数据库中找不到给定 id 或一组 id ( 2 ) 的记录时,它会引发其 ActiveRecord::RecordNotFound 异常。
这意味着不可能有像 ActiveModel::RecordNotFound 这样的异常。