Yii Framework Forum: Come Filtrare Una Cgridview Con Una Join A Cascata - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Come Filtrare Una Cgridview Con Una Join A Cascata Rate Topic: -----

#1 User is offline   m@ster 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 10
  • Joined: 02-April 12

Posted 12 December 2012 - 12:20 PM

ciao a tutti non so se mi ero già presentato... :blink:

ho un problema con le join fin che si tratta di 2 tabelle non ho problemi ma con 3 continuo ad avere errori
cerco di spiegarmi

ho 3 tabelle con relative FK

t1 (id,campo)

t2 (id,campo)
t2.campo FOREIGN KEY ("t1.id")

t3 (id,campo)
t3.campo FOREIGN KEY ("t2.id")

la select su carta è abbastanza semplice:
SELECT t1.campo, t2.campo, t3.campo,
FROM t3 
join t2 on t2.id = t3.campo
join t1 on t1.id = t2.campo


ho delle difficoltà con CDbCriteria
in particolare il "$criteria->compare('xxxxx',$this->yyyyy)
l'errore è:
che nel modello della "t3" non è presente nessuna relazione alla "t1" e quindi t1.campo non esiste

ho provato ad aggiungere una "relations()" ma sul modello t3 riesco ad aggiungere con successo solo una relazione con t2

non so se mi sono spiegato bene
qualcuno riesce ad aiutarmi?
Grazie
0

#2 User is offline   Giacomo 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 69
  • Joined: 03-October 12

Posted 19 December 2012 - 07:04 AM

View Postm@ster, on 12 December 2012 - 12:20 PM, said:

ciao a tutti non so se mi ero già presentato... :blink:

ho un problema con le join fin che si tratta di 2 tabelle non ho problemi ma con 3 continuo ad avere errori
cerco di spiegarmi

ho 3 tabelle con relative FK

t1 (id,campo)

t2 (id,campo)
t2.campo FOREIGN KEY ("t1.id")

t3 (id,campo)
t3.campo FOREIGN KEY ("t2.id")

la select su carta è abbastanza semplice:
SELECT t1.campo, t2.campo, t3.campo,
FROM t3 
join t2 on t2.id = t3.campo
join t1 on t1.id = t2.campo


ho delle difficoltà con CDbCriteria
in particolare il "$criteria->compare('xxxxx',$this->yyyyy)
l'errore è:
che nel modello della "t3" non è presente nessuna relazione alla "t1" e quindi t1.campo non esiste

ho provato ad aggiungere una "relations()" ma sul modello t3 riesco ad aggiungere con successo solo una relazione con t2

non so se mi sono spiegato bene
qualcuno riesce ad aiutarmi?
Grazie


Ciao, hai risolto? mi sono ritrovato spesso a dover gestire query di quel tipo; ho risolto simplicemente utilizzando direttamente la query, con

'CSqlDataProvider' invece di 'CActiveDataProvider'. Es.

$query = "SELECT blablabla..";
$result = new CSqlDataProvider($query,array('pagination'=>false));
$result_array = $result->getData();
var_dump($result_array);


0

#3 User is offline   m@ster 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 10
  • Joined: 02-April 12

Posted 20 December 2012 - 03:16 AM

alla fine ho risolto leggendo qui
0

#4 User is offline   m@ster 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 10
  • Joined: 02-April 12

Posted 20 December 2012 - 03:17 AM

[RISOLTO]
0

#5 User is offline   sensorario 

  • Elite Member
  • Yii
  • Group: Moderators
  • Posts: 1,987
  • Joined: 07-September 10
  • Location:Cesena (Italy)

Posted 20 December 2012 - 04:10 AM

View Postm@ster, on 20 December 2012 - 03:17 AM, said:

[RISOLTO]


Esatto: potresti inserire [risolto] nel titolo del thread?
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users