Dans certaines situations, vous voudrez sérialiser automatiquement des informations provenant de votre modèle. Si vous souhaitez exclure automatiquement certains champs de la sérialisation, vous pouvez utiliser la propriété $hidden.
Ex :
/**
* Attributs à exclure lors de la sérialisation en array ou en JSON pour ce modèle.
*
* @var array
*/
protected $hidden = [
'motdepasse',
'administrateur',
];
Ainsi, si on sérialise un objet de ce modèle en JSON, les champs motdepasse et administrateurs ne seront pas sérialisés.
Ex :
$donnees = $usager->toJson();
Si vous préférez lister les champs qui doivent être sérialisés, vous pouvez utiliser la propriété $visible.
La propriété $casts fera en sorte que lorsque les données sont lues dans la BD, elles seront automatiquement transtypées selon ce qui a été précisé.
Ex :
/**
* Attributs nécessitant une conversion de type automatique.
*
* @var array
*/
protected $casts = [
'champ1' => 'boolean',
'champ2' => 'array',
];
« Eloquent: Serialization - Hiding Attributes From JSON ». Laravel. https://laravel.com/docs/master/eloquent-serialization#hiding-attributes-from-json
« Eloquent: Mutators - Attribute Casting ». Laravel. https://laravel.com/docs/master/eloquent-mutators#attribute-casting
▼Publicité