什麼是ActiveRecord模式

2021-09-27 08:01:46 字數 640 閱讀 1402

activerecord 也屬於 orm 層,由 rails 最早提出,遵循標準的 orm 模型:表對映到記錄,記錄對映到物件,字段對映到物件屬性。配合遵循的命名和配置慣例,能夠很大程度的快速實現模型的操作,而且簡潔易懂。

activerecord 的主要思想是:

1. 每乙個資料庫表對應建立乙個類,類的每乙個物件例項對應於資料庫中表的一行記錄;通常表的每個欄位在類中都有相應的 field ;

2. activerecord 同時負責把自己持久化,在 activerecord 中封裝了對資料庫的訪問,即 curd; ;

3. activerecord 是一種領域模型 (domain model) ,封裝了部分業務邏輯;

activerecord 比較適用於:

1. 業務邏輯比較簡單,當你的類基本上和資料庫中的表一一對應時 , activerecord 是非常方便的,即你的業務邏輯大多數是對單錶操作;

2. 當發生跨表的操作時 , 往往會配合使用事務指令碼 (transaction script) ,把跨表事務提公升到事務指令碼中;

3. activerecord 最大優點是簡單 , 直觀。 乙個類就包括了資料訪問和業務邏輯 . 如果配合**生成器使用就更方便了;

這些優點使 activerecord 特別適合 web 快速開發。

ActiveRecord多型關聯

專案中經常會有這樣的情況,乙個模型是多個模型的子模型 比如picture可以是user也article的子模型 picture belongs to user picture belongs to article 這個時候可以建立多型管理 class picture belongs to image...

為啥不用ActiveRecord

首先,ar的改進之一是用特性來替換對映檔案。稱這樣能減少 提高開發效率,但是用 nhibernte 大部分人也不會手寫 而是通過工具生成,這樣這點其實優勢不大。不可否認這樣做在修改時更方便,不用修改兩個檔案 dry 但是缺點也很明顯,特性不可能完全對映配置檔案,否則特性會把類弄的很亂,這也使 ar只...

ActiveRecord學習(六) 總結

為方便大家學習activerecord,現將有關文章整理如下,希望對大家有多幫助,同時希望ar學習者能多多交流,多談談自己學習過程中的體會。官方 terrylee castle activerecord學習實踐 1 快速入門指南 castle activerecord學習實踐 2 構建配置資訊 ca...