[英]$this->find not working in cakePHP
我有一个名称为Deal class Deal extends AppModel
现在,在控制器中,我在Deal模型中调用了一个名为getDeal()的方法。
$ dealInfo = Deal :: getDeal($ dealID);
我希望信息返回给我,但var_dump显示为空白
function getDeal($dealID){
$deal = $this->Deal->find('first', array(
'conditions' =>
'Deal.id' =>$dealID
) ,
'fields' => array(
'Deal.id'
) ,
'recursive' => 1,
));
}
这是我第一次使用cakePHP,因此这个问题听起来可能有些愚蠢
当您仅使用id作为查找条件时,可以使用CakePHP的动态查找器方法。
动态查找器的工作原理是这样的。
$this->Model->findByModelFieldName();
在您的示例中
$this->findById($dealId, array(
'fields' => array('Deal.id'),
'recursive' => 1
));
我不知道我是否只是在头脑,这仅仅是因为您没有从getDeal()
返回任何内容吗?
尝试添加return $deal;
看看是否有帮助。 您的问题并未明确说明您在哪里进行var_dump
因此我可能会过得很好。
编辑:
根据与您和8vius的讨论,我们已经确定这是不对的,您只需要将$this->Deal->find()
更改$this->find()
因为它是从模型。
检查您的函数声明, $deal_id
不存在,并且如您从参数中看到的那样,您将传递给应该$deal_id
而不是dealID
。 因此,您有一个错误声明的函数,该函数使用不存在的变量调用find。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.