You are currently reading the 1.2 documentation. Switch to 2.1 2.0 Doctrine Query Language (DQL)は複雑なオブジェクト読み取りを手助けするためのObject Query Languageです。リレーショナルデータを効率的に読み取るときに(例えばユーザーと電話番号を取得するとき)DQL(もしくは生のSQL)を使うことを常に考えるべきです。 この章ではDoctrine Query Languageの使い方の例をたくさん実演します。これらすべての例ではDefining Modelsの章で定義したスキーマを使うことを想定します。またテスト用に1つの追加モデルを定義します。 // models/Account.php class Account extends Doctrine_Record { pub
モデルの中で似た内容を持つクラスを見つけることはよくあります。これらの内容はコンポーネント自身のスキーマ(リレーション、カラムの定義、インデックスの定義など)に関連することがあります。このコードをリファクタリングする明らかな方法は基底クラスとそれを継承するクラスを用意することです。 しかしながら継承はこれらの一部しか解決しません。次のセクションでDoctrine_Templateが継承よりもはるかに強力で柔軟であることを示します。 Doctrine_Templateはクラステンプレートシステムです。基本的にテンプレートはRecordクラスがロードできるすぐ使える小さなコンポーネントです。テンプレートがロードされるときsetTableDefinition()とsetUp()メソッドが起動されこれらの内部でメソッドが呼び出され渦中のクラスに導かれます。 この章ではDoctrineで利用できる様
次のセクションではDoctrineがいるORMツールの世界を説明することにします。Doctrine ORMは主に Active Record、Data Mapperと Meta Data Mappingパターンでビルドされています。 Doctrine_Recordという名前の特定の基底クラスを継承することで、すべての子クラスは典型的なActiveRecordインターフェイス(save/delete/etc.)を取得するのでDoctrineはレコードのライフサイクルの扱いとモニタリングを簡単にできます。しかしながら、大抵の場合実際の作業はDoctrine_Tableクラスのような他のコンポーネントに向けられます。このクラスの典型例はData Mapperインターフェイス、createQuery()、find(id)、findAll()、findBy*()、 findOneBy*()などです
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く