我有一个名为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工作,所以这个问题可能听起来有点愚蠢
答案 0 :(得分:2)
当您使用id作为查找条件时,可以使用CakePHP的动态查找器方法。
动态查找器就像这样工作。
$this->Model->findByModelFieldName();
在你的例子中,它将是
$this->findById($dealId, array(
'fields' => array('Deal.id'),
'recursive' => 1
));
答案 1 :(得分:1)
我不知道我是不是只是精神上,但这只是因为你没有从getDeal()
返回任何东西?
尝试添加return $deal;
,看看是否有帮助。你的问题没有准确说明你在var_dump
的确切位置,所以我可能会很幸福。
修改强>
根据与您和8vius的讨论,我们已经确定这不对,您只需将$this->Deal->find()
更改为$this->find()
,因为它是从模型运行的。
答案 2 :(得分:0)
检查您的函数声明,$deal_id
不存在,您可以从传递给我应该$deal_id
而不是dealID
的函数的参数中看到。所以你有一个误报的函数,用一个不存在的变量调用find。