テーブルにはテーブルとの has_many関係が含まれ、さらにProduct
テーブルとのhas_many 関係が含まれます。**Slab**
Rate
リレーショナル クエリが内部にラップされCActiveDataProvider
、特定のパラメーターで 3 つのテーブルが結合され、それぞれのレートの降順で製品が返されます。
を通じて結果を表形式で表示したいCGridView
。
次の構文を使用して特定の列のみにアクセスしようとしています:
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$dataProvider,
'columns'=>array(
'name','slabs.id','slabs.rates.rate'
)
));
残念ながら、オブジェクトslabs.id
をダンプすると、オブジェクトを含む配列を介しdataProvider
てオブジェクトに追加されていることがわかり、オブジェクトの下にオブジェクトがあるため、アクセスできません。Product
index[0]
Slab
Slab
index[0]
rates.rate
テーブル間の has_many 関係が原因で発生している可能性がありますが、私のクエリは常に 1 つとSlab
1 つのRate
オブジェクトを返します。
それらにアクセスして表示するにはどうすればよいですか?