Cakephp 关于获取数据

Cakephp 关于获取数据,cakephp,Cakephp,我使用此代码相应地筛选数据库,但如果我想使用此代码从数据库中仅检索1行数据: if($filter == 'Key1'){ $promo = $this->find('all', array('order' => 'Promo.created_on DESC')); }else{ $promo = $this->find('all', array('order' => 'Promo.created_on ASC'));

我使用此代码相应地筛选数据库,但如果我想使用此代码从数据库中仅检索1行数据:

    if($filter == 'Key1'){
        $promo = $this->find('all', array('order' => 'Promo.created_on DESC'));

    }else{
        $promo = $this->find('all', array('order' => 'Promo.created_on ASC'));
    }

即使它不能工作,它也不会像我希望的那样获取结果。请在这方面帮助我

如果您在controller中编写查询,您需要在find query中指定模型名称,似乎Promo是模型名称,所以查询将如下所示

如果($filter=='Key3'){ $promo=$this->promo->find('first',array('conditions'=>array('promo.id'=>3),'order'=>array('promo.created_on asc')); }


希望这对您有所帮助。

您应该提供更多详细信息。实际的问题是什么,提取的是什么,您希望取而代之的是什么?这段代码在哪里执行?生成的SQL看起来像什么?实际上是否有id为
3
的记录?ps,请始终提及您的确切CakePHP版本,并相应地标记您的问题。Key1正在工作,但当我单击key3时,它不工作,实际上我想要的是,如果我单击key3,它将获取id为3的单个数据
    if($filter == 'Key3'){

        $promo = $this->find('first', array('conditions' => array('Promo.id' => 3)
        ));
    }