在自定义查询分页中使用包含 - CakePHP

时间:2017-05-05 09:47:17

标签: php cakephp cakephp-2.0 cakephp-2.3

我在contain中的cakePHP中使用controllers行为,但我需要在Model中使用相同的行为。在默认的ORM方法中,我可以将contain与普通查询一起使用,但我需要使用paging来完成此操作。我看到了cookbook的这篇文章,但它与contain无效。这是我正在尝试的代码

public function paginate($model = null, $conditions, $fields, $order, $limit, $page = 1, $recursive = null, $extra = array()) {

        $limit = 1;
        $group = 'Test.id';
        $modelObj = $model;
        if (is_null($model)) {
            $modelObj = $this;
        }
        return $modelObj->find(
                        'all', compact('conditions', 'fields', 'order', 'limit', 'page', 'recursive', 'group', 'extra')
        );
}

此功能的被调用者是

$contain["contain"] = array(
            "User" => array(
                "fields" => array(
                    "User.first_name"
                )
            )
        );
$tests = $this->paginate(null, $conditionsTest, array('Test.*'), "Test.paper_name ASC", $requestData["limit"] / 2, $requestData["page"], 1, $contain);

我正在通过contain,但它无效。任何单一意见对我都有很大帮助。

0 个答案:

没有答案