Press "Enter" to skip to content

CakePHP e Virtual Fields: ecco come utilizzarli

Condividi il post con i tuoi amici o colleghi

I Virtual Fields sono dei campi virtuali che puoi creare e assegnare a un modello della tua applicazione CakePHP. Anche se non possono essere salvati, questi campi, possono essere utilizzati per ogni operazione come qualsiasi altro campo del tuo modello.

Il classico esempio di utilizzo è quello che riguarda la concatenazione di nome e cognome di un utente. In un listing, ad esempio una rubrica di contatti, può essere più utile visualizzare il fullname “Mario Rossi” piuttosto del singolo cognome. Sicuramente hai 249 “Rossi” in rubrica. Come riconoscere Mario Rossi? 😀

Utilizzo dei Virtual Fields

Ecco come utilizzare il Virtual Field “fullname” nel Model:


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


Invece, in un Controller, ecco come utilizzarlo per una query di ricerca:


$virtualField = 'CONCAT(User.name, " ", User.surname)';

$conditions[] = array(
    'OR' => array(
        array("User.name LIKE '%" .$this->request->data["User"]["q"] ."%'"),
        array("User.surname LIKE '%" .$this->request->data["User"]["q"] ."%'"),
        array($virtualField ." LIKE '%" .$this->request->data["User"]["q"] ."%'")
    )
);


Qui trovi altri articoli che riguardano CakePHP.

Per non perdere i prossimi articoli, invece, iscriviti alla newsletter utilizzando il box in basso. E’ gratis e fa di te un developer dal discreto fascino 🙂


Condividi il post con i tuoi amici o colleghi