2012-01-07 8 views
0

コントローラに定義されていないサイトの宛先に移動すると、通常のMissing Controllerエラーメッセージがレイアウト内に表示されますが、私のapp_controllerの中で私のbeforeFilter()関数を呼び出すことは、未定義です。コントローラのページが見つからない場合の未定義の変数

public function beforeFilter() { 

    $totalSubmissions = $this->Submission->find('count'); 
} 

はその後、私は$ totalSubmissions値を呼び出す要素(例えばsidebar_count.ctp)を持っています。これ以外のすべてのページで動作します。その値を常にレンダリングする方法がありますか?

私はその数の代わりに取得応答は次のとおりです。

Notice (8): Undefined variable: totalSubmissions [APP/views/elements/sidebar_count.ctp, line 7] 

が、私はこの問題を解決するために、私のapp_controllerに何かを追加する必要がありますか?

答えて

1

ビューの変数を設定するのを忘れてしまったようです。そのため、ビュー内にも変数にも含まれていません。固定すると、要素にコアラクトに伝播するはずです。

public function beforeFilter() { 

    $this->set('totalSubmissions', $this->Submission->find('count')); 
} 
+0

良いキャッチ。私は実際にこれを行うが、それでも私にエラーが出る。私はちょうど変数にそのカウント結果を設定し、それを$ this-> set ..に入れました。これは私が言及しなかったものです。 –

+0

あなたはそれを含むすべての要素で起こるのでしょうか? – bbb

+0

この特定の場合のみ。 –

関連する問題