2012-04-06 9 views
0

私はphpとcodeigniterを使い慣れていますが、パイロンとsqlalchemyの経験があります。そこCodeIgniterとORM(datamapper)

あなたはモデルクラスを定義して、あなたが「ペースターセットアップアプリのdevelopment.iniの」ようなコマンドを使用して、(ペースター?)あなたのためのテーブルを作成し、任意のSQLコードを記述する必要はいけない...

私はcodeigniterとdatamapperでこれを試していましたが、これまでは可能かどうかは分かりません。だからここで私はそれが可能かどうか尋ねていますか?

"models /"では、(sqlalchemyのように)独自のクラスを置くことができるので、私は非常に混乱しています。これらのクラスでは、すべての属性、関係などを定義します。なぜ同じことを2回書く必要がありますか? (このクラスの第1位はSQLスクリプトの第2位です)

答えて

1

これは不可能ですが、Datamapperはテーブルが存在すると期待するActive Recordパターンを実装しています。

Datamapperモデルで属性を定義する必要はなく、関連するテーブルから取得され(キャッシュされます)。

+0

http://datamapper.wanwizard.eu/pages/gettingstarted.html モデルクラスを定義する必要があります。 hmm pylonsはCIよりもエレガントです... =/ – karantan

+1

それはあなたが優雅と呼ぶことに依存します。 Activerecordパターンにはデータストアが先頭にあり、Datamapperパターンのように定義が先行しています。 Datamapper ORMは、まずデータベース設計作業を行い、次にコードをモデル化することを期待しています。コードからテーブルを作成する場合は、Migrationsライブラリを参照してください。 – WanWizard

関連する問題