Web サイトの速度を最適化し、リレーショナル (選択) フィールド データを含むすべてのデータを 1 回のクエリで取得したいと考えています。どうやってするか?
これまでの私の調査結果の下に:
$pod->field('relational_field');
追加のクエリを実行すると実行されることに気付きました。
名前フィールドとリレーショナル(選択)のカテゴリ フィールドを持つポッドを想定します。
// This code below will behave unexpected
$pod = pods( 'pod', array(
'where' => array(...),
'select' => array('t.name', 'category.name AS category_name')
));
2 つのカテゴリにリンクされた1 つの Pod アイテムを作成したと仮定すると、select オプションの category.name AS category_name により、2 つの結果が得られます。ポッドに 1 つのカテゴリが割り当てられている場合は、1 つの結果が得られます。
結果は次のとおりです。
array (size=2)
0 =>
object(stdClass)[2928]
public 'name' => string 'My pod 1' (length=8)
public 'category' => string 'Category 1' (length=10)
1 =>
object(stdClass)[2929]
public 'name' => string 'My pod 1' (length=8)
public 'category' => string 'Category 2' (length=10) // <-- The difference is only in category
私が本当に欲しいのは、配列としての「カテゴリ」キーの 2 つのカテゴリのデータです。それは可能ですか?
(もともとPods.ioに投稿されたもの)