-1

そのため、queryPHP が提供する afterFind 関数をセットアップして、クエリから結果が返されるかどうかを判断しようとしています。

デバッグ出力をテストすると、これは私が受け取ったものです:

Warning (2): Invalid argument supplied for foreach() [APP/Model/Form.php, line 70]    

app/Model/Form.php (line 71)
'0'

この動作は非常に奇妙に思えます。これは、foreach ループで無効な引数が提供されていることを示していますが、同時に、データベース上のクエリの正しいカウントが 0 であると判断できるためです。

これは、私の Form.php モデルにある以下の関数です。

public function afterFind($results, $primary = true){
     foreach ($results as $key => $val) {
         debug($val[0]['count']);
     }
}

コントローラーで結果をページ分割しようとしているため、この方法で実行しようとしていますが、結果のカウントが 0 の場合は $this->Session->Setflash(); を実行します。

私が知る限り、$this->Form->Find()関数は結果の合計数を計算できます。

カウント機能は動作しません$this->paginate('Form) ex. $this->paginate('count', 'Form');]

これを行う別の方法はありますか?

4

1 に答える 1