1

Doctrine (バージョン 1.0.3) をいじって、私が書いているアプリのコレクションに適しているかどうかを確認しています。

クエリを実行しようとしていて、3 つのフィールドのみを返します。1 つのテーブルで正しいフィールドを取得していますが、結合テーブルでは 1 つのフィールドのみが必要な場合にすべてを取得しています。SQL がどうあるべきかを phpMyAdmin に書き出したところ、必要なものだけが返されます。

 31 $ftp_info = Doctrine_Query::create()
 32          ->select('f.uid, f.home, s.identifier')
 33          ->from('FtpUser f')
 34          ->leftJoin('f.Submitter s')
 35          ->where('f.uid = ?',500)
 36          ->execute();
 37
 38 print $ftp_info[0]->uid ."\n";
 39 print $ftp_info[0]->home ."\n";
 40 print $ftp_info[0]->Submitter->description ."\n";
 41 print $ftp_info[0]->Submitter->identifier ."\n";

クエリで要求しなかった場合、説明の値が表示されます。これら 2 つのテーブルには、適切な setUp メソッドで定義された 1 対 1 の関係があります。

私が欠けているものの手がかりはありますか?

4

1 に答える 1

2

要求に応じて、データベースからそのフィールドを自動的に遅延ロードすると思います。こちらをご覧ください

あなたはおそらくvar_dump()これを確認するための結果かもしれません

于 2008-11-12T16:49:19.963 に答える