Je suis en train de load
, edit
et save
un record avec CakePHP 2.0
mais je reçois un generic error
au cours de la méthode save
qui ne me permettent pas de comprendre où est le problème.Enregistrement des données avec CakePHP ne fonctionnera pas
si j'essaye avec debug($this->User->invalidFields());
je reçois un empty array
, mais j'obtiens false
de $this->User->save()
condition.
est ici l'action du contrôleur où je reçois l'erreur:
public function activate ($code = false) {
if (!empty ($code)) {
// if I printr $user I get the right user
$user = $this->User->find('first', array('activation_key' => $code));
if (!empty($user)) {
$this->User->set(array (
'activation_key' => null,
'active' => 1
));
if ($this->User->save()) {
$this->render('activation_successful');
} else {
// I get this error
$this->set('status', 'Save error message');
$this->set('user_data', $user);
$this->render('activation_fail');
}
debug($this->User->invalidFields());
} else {
$this->set('status', 'Account not found for this key');
$this->render('activation_fail');
}
} else {
$this->set('status', 'Empty key');
$this->render('activation_fail');
}
}
Lorsque je tente l'action test.com/users/activate/hashedkey
je reçois la page du modèle activation_fail
avec le message Save error message
.
Si je printr
le $user
var je reçois le bon utilisateur de la méthode du gâteau find
.
Où est-ce que je me trompe?
Est-il possible que la validation échoue? – NullUserException
pouvez-vous me suggérer une autre façon de déboguer des fichiers invalides au lieu de 'debug ($ this-> User-> invalidFields());'? – vitto