わかりました。2つのモデルがあります。
1:pv_array(太陽光発電アレイ)2:モジュール(太陽光発電モジュール)
それらの両方の間にMANY_MANY関係があります:
return array(
'modules' => array(self::MANY_MANY, 'module', 'module_to_array(array_id, module_id)'),
);
return array(
'arrays' => array(self::MANY_MANY, 'pv_array', 'module_to_array(module_id, array_id)'),
);
問題は、モジュールを配列に追加するときに、同じモジュールの複数のインスタンスを配列に追加する機能が必要なことです...データベーステーブルmodule_to_arrayを確認すると、複数のエントリが存在するため、これは問題なく実行できます。
ただし、次のように配列内のモジュールにアクセスします。
$pv_array = pv_array::model()->findByPk( 2 );
echo count( $pv_array->modules);
モジュールの単一のインスタンスのみをカウントし、存在するモジュールの複数のインスタンスはカウントしません... ??
たとえば、3 xModuleXYZと2xModuleABCをArray1に追加した場合、次のようになります。
echo count( $Array1->modules ); // would echo 2
エコーしたい場所5
何か案が?