Yii framework Muitos para muitos relacionamentos

Qual é o método para salvar e atualizar muitos para muitos relacionamentos no framework Yii?

A menos que você crie um modelo para a tabela entre as duas tabelas principais, sua única opção é usar DAO (Database Access Object) e especificar SQL com ela.

Dê uma olhada em como a demo do blog realiza essa tarefa.

use o tipo de relacionamento MANY_MANY para configurar muitas ou muitas conexões entre modelos (uma tabela associativa é necessária para quebrar um relacionamento de muitos para muitos em relacionamentos de um para muitos) e agora você pode usar todas as funções relacionais de Active Records

Yii Framework – O Guia Definitivo para Yii: Trabalhando com Bancos de Dados – Registro Relacional Ativo

A seguinte extensão faz o que você deseja … Yii Framework – Extensão: cadvancedbehavior

Uma coisa importante a notar: em cada atualização, a extensão limpa todos os registros anteriores e cria novos. Então eu não usaria isso quando a tabela de intermediação contiver dados adicionais que não as foreign keys.

você poderia configurar isso no nível mysql … indo à visão relacional sob cada tabela em phpmyadmin e fornecer a condição relacional necessária .. e use MANY_MANY na class modelo dentro das relações ..

A questão é muito comum.

Normalmente, os componentes de dados com muitos relacionamentos aparecem de forma sequencial e independente. Então, você só precisa fazer uma ação de inserção após a outra.

Se o seu relacionamento precisar de atualização dependente, o usuário SQL deve triggersr no nível do DataBase. Isso assegurará a integridade dos dados e dará uma boa separação na lógica comercial da aplicação.

 CREATE TRIGGER some_trigger AFTER UPDATE ON some_table ... END IF; 

Uma maneira similar é encapsular dados relacionais em um modelo lógico em nível PHP (e, por exemplo, manipular com modelos 2-3 AR) e emular a lógica de gatilhos SQL nela.