0

だから私は自分のモデルの afterFind で単純な関数を実行しています:

    public function afterFind($results) {
        foreach ($results as $key => $val) {
            if ($val['User']['password']) {
                $results[$key]['User']['status'] = 'active';
            } else if ($val['Ticket']['id']) {
                $results[$key]['User']['status'] = 'pending';
            } else {
                $results[$key]['User']['status'] = 'inactive';
            }
        }
        return $results;
    }

これらの変数が定義されていて、ページが正常にレンダリングされているにもかかわらず、2 つのエラーが表示されます (エラーは別として)。

Notice (8): Undefined index: User [APP/Model/User.php, line 145]

Notice (8): Undefined index: Ticket [APP/Model/User.php, line 147]

ページ分割されていない結果を die() すると、すべて問題ありません... ページ分割された結果を die() すると、すべてのデータが同一で​​あっても、これらのエラーが発生します。

何を与える?

4

1 に答える 1

2

キーが設定されているかどうかを確認する必要があります。find('count返される値がカウントのみの場合、ページネーションが )` クエリを実行している場合、おそらく失敗しています。

のようなチェックisset($results[$key]['User']['password'])でうまくいくはずです。

于 2012-05-06T05:42:55.480 に答える