sql >> Base de Datos >  >> RDS >> Mysql

Cakephp 2.0 consulta mysql

No estoy seguro de lo que ya hizo y cómo se llama su controlador/modelo, así que solo pongo ejemplos de código que pueden ayudar a comprender la idea básica.

En el modelo Hpsas se define la relación "muchos a uno".

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

En el modelo Ldaps se define la relación "uno a muchos".

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

Ahora, si ejecuta el código $this->Hpsas->find('all') en el controlador Hpsass probablemente obtendrá los siguientes resultados:

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
)

No se confunda con el alias que usé en las muestras, puede nombrar lo que quiera. Son útiles cuando es necesario tratar con asociaciones múltiples para el mismo modelo. Se pueden encontrar muestras explicadas más detalladas en documentación .