cakephp logo

 

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 🙂

NO SPAM. Non fornirò la tua email a terzi e riceverai solo contenuti che ti interessano sugli argomenti che tratto e potrai cancellarti quando vuoi con un link che trovi in tutte le email.