Ho una tabella Prodotti che una un id come chiave primaria ed un campo ‘codice_prodotto’
Questo model ha la realazione 1-N con una tabella di compatiblitò
'compatibilita' => array(self::HAS_MANY, "Compatibilita", "codice_prodotto"),
La tabella compatiblità ha semplicemente una serie di relazioni N-N tra codice_prodotto e id_modello
Difatti il modello delle compatiblità ha la seguente relation
'modello' => array(self::BELONGS_TO, "Modelli", 'id_modello'),
Il che chiude il cerchio creando una relazione N-N tra prodotti e modelli
Devo fare un prefiltraggio sulla tabella listini tirando dentro solo quelli con questa condizione
prodotto->compatiblita->modello->marca = "Pininfarina"
Dove marca è un campo della tabella modello.
Tenendo conto che ci sono 8 mila prodotti e 300 modelli, mi viene da pensare che il risultato, anche riuscendo a creare una realazione indiretta usando Yii, sia qualcosa tipo 10-12 mila record, per via delle relazioni n-n, che però per fortuna sono quai sempre 1-1 alla fine…
Non solo so come creare una name scope dentro a prodotti che mi crei questo tipo di filtro … , ma ho anche paura che alla fine le prestazioni ne risentano parecchio…