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

Brug af virtuelle felter i cakePHP 2.x

Fedt, så jeg fiksede det. Delvist tak til Brandon for at pege mig i den rigtige retning.

På grund af begrænsningen af ​​virtuelle felter var jeg nødt til at løse problemet.

Så i min HrEmployee-model gjorde jeg dette:

public $virtualFields = array(
    'fullname' => 'CONCAT(HrEmployee.name, " ", HrEmployee.surname, " (", HrEmployee.jobTitle, ")")'
);

Og i min brugermodel ændrede jeg den til dette:

class User extends AppModel {
public function __construct($id = false, $table = null, $ds = null) {
    parent::__construct($id, $table, $ds);
    $this->virtualFields['fullname'] = $this->HrEmployee->virtualFields['fullname'];
}

Og til sidst, i min UsersController, har jeg lige ændret det lidt:

$hrEmployees = $this->User->HrEmployee->find('list',
    array(
        'fields' => array("id","fullname"),
        'order' => array('HrEmployee.name ASC','HrEmployee.surname ASC')
));


  1. Implementering af en meget tilgængelig Nextcloud med MySQL Galera Cluster og GlusterFS

  2. Sådan opretter du transaktionsreplikering

  3. STR_TO_DATE() Eksempler – MySQL

  4. OPENROWSET accepterer ikke variabler for sine argumenter (SQL-server)