Rails 3 中 ActiveRecord::RecordNotFound 的替代语法是什么

发布于 2024-08-22 17:15:16 字数 106 浏览 6 评论 0原文

随着 Rails 3 中 ActiveModel 的引入,调用 ActiveRecord::RecordNotFound 的新方法是什么? ActiveModel::RecordNotFound ?

With the introduction of ActiveModel in Rails 3 whats the new method of calling ActiveRecord::RecordNotFound. ActiveModel::RecordNotFound ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

那些过往 2024-08-29 17:15:16

这是 ActiveModel 的定义 (1):

ActiveModel 是每个 ORM 实现的类,以允许 Rails 生成自定义的控制器代码。

ActiveRecord 实现 ActiveModel。当 ActiveRecord 无法通过给定 id 或一组 id 找到记录时,它会引发 ActiveRecord::RecordNotFound 异常 (2) 在数据库中。

这意味着不能出现像 ActiveModel::RecordNotFound 这样的异常。

This is the definition (1) of ActiveModel:

ActiveModel is a class to be implemented by each ORM to allow Rails to generate customized controller code.

ActiveRecord implements ActiveModel. ActiveRecord raises its ActiveRecord::RecordNotFound exception when it can't find record by given id or a set of ids (2) in the database.

This mean there can't be such exception like ActiveModel::RecordNotFound.

满意归宿 2024-08-29 17:15:16

ActiveModel 是一组要实现的模块和约定,主要目标是为映射器提供通用接口,不多也不少。所以不,ActiveRecord::RecordNotFound 仍然是 ActiveRecord::RecordNotFoundRecordNotFound 对每个映射器都没有意义:例如,对于 Mongoid,您将拥有 DocumentNotFound (嗯,Mongoid::Errors::DocumentNotFound )。

ActiveModel is a set of modules and conventions to be implemented, the main goal being providing a common interface to mappers, no more, no less. So nope, ActiveRecord::RecordNotFound stays ActiveRecord::RecordNotFound. RecordNotFound does not make sense for every mapper : with Mongoid for instance, you'll have DocumentNotFound (well, Mongoid::Errors::DocumentNotFound).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文