6-4Propelの利用 基本編Tips410 関連するテーブルのレコードを抽出する
Level1
Pointメインとなるテーブルの抽出結果オブジェクトに定義されているgetメソッドを用いる
関連するテーブルのレコードを抽出するには、まずメインとなるテーブルのレコードをオブジェクトとして取得し、次にそのオブジェクトが持つgetメソッドを利用します。
例えば、booksテーブルに紐づくpublishersテーブルのレコードを取得するには、以下のように記述します。
$book = BookQuery::create()->findPk(1);
$publisher = $book->getPublisher();
booksテーブルとpublishersテーブルは多対1の関係ですので、publishersテーブルのレコードを取得するメソッドは複数形のgetPublishers()ではなく、単数形のgetPublisher()となります。
逆に、booksテーブルとreviewsテーブルは1対多の関係ですから、以下のように複数形でgetReviews()と記述します。
$book = BookQuery::create()->findPk(1);
$reviews = $book->getReviews();
この記事は会員限定です。会員登録をすると続きをお読みいただけます。
ログイン / 新規登録