0

私は一晩中自分の問題を実行してきましたが、ユーザーモデルのエントリを更新するために多くの方法を試しましたが、わかりませんでした。

私はsaveField、updateAll、およびfindByを試してから保存しましたが、DBの新しいエントリまたは更新がないだけです。

ここにコードがあります、あなたが助けてくれることを願っています

    <?php
    public function email_verification($token) {
    $this->User->create();
    $user = $this->User->findByEmailToken($token);
    $this->User->set(array('email_token' => 'valid'), $user);
    $this->User->save($user, false);
}
    ?>

前もって感謝します

4

2 に答える 2

0

アフム:

$this->User->set(array('email_token' => 'valid'), $user);
$this->User->save($user, false);

save() 呼び出しは、元のデータでレコードを保存します..... $user を渡すためです!

$this->user->set() の呼び出しを次のように置き換えます。

$user['User']['email_token'] => 'valid';
于 2013-10-30T01:42:23.647 に答える
0

以下のコードを試してください。

<?php
public function email_verification($token) {
    $user = $this->User->findByEmailToken($token);
    $user['User']['email_token'] = 'valid';
    if ($this->User->save($user)) {
        ....
        ....
    } else {
        debug($this->User->validationErrors);
    }
}
?>
于 2013-10-30T01:37:11.447 に答える