0

これを行う方法についての解決策を探していましたが、解決策に最も近いのはあなたのモデルにあります。

public function beforeSave() {
    parent::beforeSave();

    if(!isset($this->data["Model"]["confirm"])) {
        return false;
    }
   }

そして、コントローラーで次のようにします。

        $this->Model->save($this->request->data);
        if($this->Model->validates()) {
            $this->render("confirm");
        } else {
            $this->Session->setFlash(__('The model could not be saved. Please, try again.'));
            // now we can render
            $this->render("index");
        }

このアプローチの問題は、エラー メッセージが 2 回表示されることです。これを行うためのより良い方法はありますか? または、これをハックな方法で行い、2 回表示されるエラー メッセージを削除する方法を見つける必要があります。

4

1 に答える 1

1

ドキュメントをもう少し詳しく調べる必要があります。答えはhttp://book.cakephp.org/2.0/en/models/data-validation/validating-data-from-the-controller.htmlにあります

APIではなくドキュメントを見るように指摘してくれた@dm03514に感謝します(本当の答えを見つけることなく何日も読んでいます)!

于 2012-05-14T14:49:20.403 に答える