Lorsque j'enregistre des données ayant deux champs d'énumération pour gérer le statut du message, c'est-à-dire lu ou non lu par l'utilisateur. J'utilise l'enum ('1', '0') pour gérer le statut '1' => lu et '0' => non lu.
Le code suivant enregistrera le message mais dans la colonne d'état, il enregistrera un fichier vide.
$data = array(
'message' => 'test message',
'status' => 1
);
$this->Message->save($data);
La structure de la base de données est la suivante
Field Type Collation Null Key Default
------------------ ------------- ----------------- ------ ------ -------
id bigint(20) (NULL) NO PRI (NULL)
message varchar(255) (NULL) NO MUL (NULL)
status enum('0','1') latin1_swedish_ci NO MUL 0
même si j'ai utilisé un tableau de données comme
$data = array(
'message' => 'test message',
'status' => '1'
);
$data = array(
'message' => 'test message',
'status' => "'".1."'"
);