1
我有工作位置模型。它与数据库中的Orders和belongsTo关系相关联。所以,我需要找到与订单模型相关的条件的具体工作位置。所以,当我使用例如吸类的发现:查找查询中的CakePHP连接表
$workpositions = $this->Workposition->find('all', array(
'conditions' => array(
'Order.type' => 'N'
)
));
CakePHP了解Order.id
表示法。但是当我试图使用连接表:
$workpositions = $this->Workposition->find('all', array(
'conditions' => array(
'Order.type' => 'N'
)
'joins' => array(
array('table' => 'ordergroups_orders',
'alias' => 'OrdergroupsOrder',
'type' => 'INNER',
'conditions' => array(
'Order.id = OrdergroupsOrder.order_id',
'OrdergroupsOrder.ordergroup_id' => '3',
)
)
)));
它给了我一个错误:Column not found: 1054 Unknown column 'Order.id' in 'on clause'
。所以它不理解Order.id
表示法。可能是什么问题?
我试着也使这样的事情:
$workpositions = $this->Workposition->find('all', array(
'conditions' => $conditions,
'joins' => array(
array('table' => 'orders',
'alias' => 'Orders',
'type' => 'INNER',
),
array('table' => 'ordergroups_orders',
'alias' => 'OrdergroupsOrder',
'type' => 'INNER',
'conditions' => array(
'Orders.id = OrdergroupsOrder.order_id',
'OrdergroupsOrder.ordergroup_id' => $ordergroup_ids,
)
)
)));
,但我得到未找到错误列:在“关于条款”(阵列字符串转换)1054未知列“阵”。因此,它不会拒绝我的ID数组,而它在没有订购模型的绑定的情况下将其取消,当查找方法看到订单时。
我认为你必须绑定Order模型与 –
@MdHasiburRahaman,我添加了一些代码。它没有帮助 – Vladislav