2011-07-27 5 views
0

valitingErrorsをbeforeFilterから設定できません。どうして?beforeFilterからvalidationErrorsを設定できません

function beforeFilter() { 
    if ($this->Session->check('errors')) { 
     $this->validationErrors = array ('Question' => array('text' => 'notEmpty')); 
    } 
} 

私は "の$ this - >によりvalidationErrors" と "の$ this - >モデル - >によりvalidationErrors" の両方を試してみましたが、それらのどれも動作するようには思えません。ビューに行くと、$ this-> validationErrors変数が空であることがデバッグキットによって報告されます。

+1

beforeFilter()でそれらを取得しようとしている理由を聞いてもらえますか? –

答えて

0

私は、validationErrorsを変更すると、呼び出すために使用するモデルが検証されるモデルであることを理解しました。質問を検証したい場合は、$ this-> Question-> validationErrors = ...

ありがとうございました。 :)

1

私はそれを試みたことはありませんが、その段階でモデルが初期化されていない可能性があります。実際の操作で使用するには、その値を保存する必要があります。

+0

それはいい考えでした。しかし、私はコントローラ上でそれを設定することはできません。 : – dccarmo

+0

どういう意味ですか?beforeはコントローラメソッドをフィルタリングしますか?$ this-> ModelNameの出力をログに記録して、nullかどうか試してみてください。エラーをSessionに保存して後で使用できます。とにかくビューまでレンダリングされません。 –

関連する問題