複数のテーブルを調べるために、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が条件を渡す方法はフィールドを指定しません。だから私はcontainsの外で条件をやりたいと思っています...
'conditions' = array(
'OR' => array(
array("Table.field_name LIKE " => '%'.$parameter.'%'),
array("Table.field_name LIKE " => '%'.$parameter.'%'),
array("Table.field_name LIKE " => '%'.$parameter.'%')
)
)
もちろん、containable 動作では、contain 配列の tables キーの下に条件を含める必要があるため、これは不可能です。これはイライラします。誰かがこの問題の解決策または回避策を持っていますか?
CakePHP 2.x を使用しています