使用CakePHP分页和可包含行为创建复杂条件

时间:2013-01-22 16:50:04

标签: php cakephp paginate containable

我使用可包含的行为来查看几个表。

    $this->paginate = array(
        'contain' => array(
            'Co' => array('fields' => array('ref')),
            'CoItemType' => array('fields' => array('name')),
            'Casing' => array(
                'fields' => array('id','barcode','CONCAT(plant_dot,size_dot,product_line_dot,production_week) as dot'),
                'Customer' => array('fields' => array('company_name')),
            )
        )
    );

这可以按预期工作。但是我正在将它与jQuery数据表集成,以及dataTables在没有指定字段的情况下传递的方式。所以我想在包含之外做条件,就像这样...

    'conditions' = array(
        'OR' => array(
            array("Table.field_name LIKE " => '%'.$parameter.'%'),
            array("Table.field_name LIKE " => '%'.$parameter.'%'),
            array("Table.field_name LIKE " => '%'.$parameter.'%')
        )
    )

当然这是不可能的,因为可包含的行为要求您在contains数组中包含表键下的条件。这是令人沮丧的,有没有人有解决方案或解决这个问题?

我正在使用CakePHP 2.x

1 个答案:

答案 0 :(得分:0)

使用评论中所述的可链接行为。