1

我有一个具有模型作业的作业控制器。

当我点击 /jobs(作业控制器的索引功能)时,我需要在其他 2 个表(未加入作业)上运行查询,以查找要在实际显示索引之前手动插入作业的值。

我已经尝试了几件事,但似乎无法在这方面取得任何进展。

谁能帮我这个?

1) 从客户和包裹的连接中选择字段(复杂条件) 2) 遍历结果并在作业中插入/更新值 3) 显示作业

先感谢您。

马尼坎丹

4

2 回答 2

5

您可以通过多种方式加载不相关的模型,但这可能是控制器的最佳方式:

$this->loadModel('Customer');
$customers = $this->Customer->find('all');

替代方案包括:

ClassRegistry::init('Customer')->find('all');
// or (equivalent)
$customer = ClassRegistry::init('Customer')
$customers = $customer->find('all');

或者:

App::import('Model', 'Customer');
$customer = new Customer();
$customers = $customer->find('all');
于 2011-08-09T13:16:56.590 回答
2

如果放在 AppController 中的 beforeFilter 下,这也可以正常工作:

if($this->referer() == '/users/login' && $this->Auth->user()){
    $this->loadModel('User');
    $this->User->id = $this->Auth->User('id');
    $this->User->saveField('last_login', date(DATE_ATOM));
}
于 2012-05-31T19:15:22.813 回答