1

次のように機能するモデルの関連付けがあります。

Users hasAndBelongsToMany Tags

タグに基づいてユーザーのグループをページ分割できるようにしたいと考えています。ユーザーは多くのタグを持つことができ、要求されたフィルターは複雑になる可能性があります。つまり、クエリはタグを持つすべてのユーザーを要求できますが、タグはAありBませんC。タグのページネーションを使用して (条件配列をタグ モデルに適用できるように)、そのタグのサブセット内にあるユーザーを取得することで、これを処理する方法がより管理しやすくなります。

次のようにページネーションを設定したため、ページネーションを試みたときに問題が発生します。

$this->paginate = array(
    'conditions' => $conditions, 
    'contain' => array('User'), 
    'limit' => 5, 
);

$this->paginate('Tag')

したがって、ページネーションは期待どおりに機能し、タグに基づいてページネーションの配列を返しますが、私が望むのはユーザーによるページネーションです。ページネーションをユーザーに依存するように切り替えると、それ自体が一連の問題を引き起こします (「これは私が以前に使用していたものです」)。このようなモデル関連のページネーションだけが存在しますか? これは、cakephp ができるかもしれないタイプのことだと思います。助けてくれた人に感謝します。

4

2 に答える 2

1

これをモデルに配置します。

function paginateCount($conditions = null, $recursive = 0, $extra = array()) {
        $parameters = compact('conditions');
        $this->recursive = $recursive;
        $count = $this->find('count', array_merge($parameters, $extra));
        if (isset($extra['group'])) {
            $count = $this->getAffectedRows();
        }
        return $count;
    }
于 2013-10-14T07:42:49.173 に答える