Mysql
 sql >> Database >  >> RDS >> Mysql

Cakephp 2.0 query mysql

Non sono sicuro di cosa hai già fatto e di come sia chiamato il tuo controller/modello, quindi ho appena inserito esempi di codice che potrebbero aiutare a capire l'idea di base.

Nel modello Hpsas è definita la relazione "molti a uno".

class Hpsas extends AppModel {
    public $belongsTo = array(
        'uniqueAlias1' => array(
            'className'  => 'Ldaps',
            'foreignKey' => 'ciname'
        )
    );
/... 

Nel modello Ldaps è definita la relazione "uno a molti".

class Ldaps extends AppModel {
    public $hasMany = array(
        'uniqueAlias2' => array(
            'className'  => 'Hpsas',
            'foreignKey' => 'ciname'
        ),
    );
/...

Ora se esegui il codice $this->Hpsas->find('all') sul controller Hpsass probabilmente otterrai i seguenti risultati:

array(
    (int) 0 => array(
        'uniqueAlias1' => array(
            //hpsas table row with value
        ),
        'uniqueAlias2' => array(
            //ldaps table row where hpsas.ciname = ldaps.ciname 
        )
    ),
        //rest hpsas table rows
)

Non confonderti sull'alias che ho usato nei campioni, potresti nominare quello che vuoi. Sono utili quando è necessario gestire l'associazione di multipli per lo stesso modello. Esempi spiegati più dettagliati possono essere trovati su documentazione .