2012-04-06 56 views
0

我是新來的php和codeigniter,但我有塔和sqlalchemy的經驗。CodeIgniter和ORM(datamapper)

有你定義模型類,然後使用命令類似「貼紙設置 - 應用程序development.ini」和(貼膜?),爲您創建表和你沒有寫任何的SQL代碼...

我正在用codeigniter和datamapper嘗試這個,但到目前爲止我不確定它是否可能。所以在這裏,我問你是否有可能?

我很困惑,因爲在「模型/」中,你可以把你自己的類(如在sqlalchemy中)。在這些類中你定義了每個屬性,關係和其他東西。那麼爲什麼你需要兩次寫同樣的東西? (在這個類的第一個sql腳本第二個)

回答

1

這是不可能的,Datamapper實現了活動記錄模式,期望表存在。

無需在Datamapper模型中定義任何屬性,它將從關聯的表(並緩存)中獲取。

+0

http://datamapper.wanwizard.eu/pages/gettingstarted.html 您必須定義模型類。嗯掛架有這比CI更優雅... =/ – karantan 2012-04-07 16:18:23

+1

這一切都取決於你稱之爲優雅。 Activerecord模式具有數據存儲作爲領導,在Datamapper模式中,定義是領先的。 Datamapper ORM希望您首先完成數據庫設計工作,然後對代碼進行建模。如果您想從代碼創建表,請查看遷移庫。 – WanWizard 2012-05-07 10:52:06