Rails Active Record 全面解析
1. Active Record 概述
Active Record 是 Rails 提供的对象 - 关系映射(ORM)层,它实现了应用程序的模型部分。在后续内容中,我们将基于之前在 Depot 应用中的数据映射,进一步探讨如何使用 Active Record 管理表关系,以及执行创建、读取、更新和删除操作(即 CRUD 操作),最后深入研究 Active Record 对象的生命周期,包括回调和事务。
2. 数据定义
在 Depot 应用里,我们定义了多个模型,比如 Order 模型。这个模型有多个属性,像字符串类型的电子邮件地址。除了我们自定义的属性,Rails 还会自动提供一些属性,例如包含记录主键的 id 属性,以及用于跟踪每行最后更新时间的属性。同时,Rails 支持模型之间的关系,像订单和订单项之间的关系。
2.1 表和列的组织
每个 ApplicationRecord 的子类(如 Order 类)都对应一个独立的数据库表。默认情况下,Active Record 认为与某个类关联的表名是该类名的复数形式。如果类名包含多个大写单词,表名中这些单词之间会用下划线分隔。以下是一些类名和对应表名的示例:
| 表名 | 类名 |
| ---- | ---- |
| orders | Order |
| tax_agencies | TaxAgency |
| batches | Batch |
| diagnoses | Diagnosis |
| lin
超级会员免费看
订阅专栏 解锁全文
56

被折叠的 条评论
为什么被折叠?



