次の方法で、3つのテーブル/アクティブレコードモデルを介して、2つのオブジェクト(この例ではModelAとModelB)間の多対多の関係を定義しています。
ModelA-<ModelA_B>-ModelB
ModelA_Bには、ModelAとModelBの両方に対する外部キーフィールドが含まれています。したがって、ModelAのコードでは、relations()関数に次のように追加しました。
'modelbs' => array(self::MANY_MANY, 'ModelB', 'tbl_modelb(modela_id,modelb_id)'),
私の質問は、リンクテーブルModelA_Bとの関係を表すために、Giiによって生成されたHAS_MANY関係がまだ必要ですか、それとも上記のMANY_MANYによって暗黙的に宣言されていますか?
'modelabs' => array(self::HAS_MANY, 'ModelA_B', 'ModelA_Id'),