CakePHP 2.0.4 - findBy魔术方法与条件

时间:2012-01-04 10:42:28

标签: php conditional-statements cakephp-2.0 magic-methods findby

我正在尝试构建一个小型cms来测试CakePHP 2.x

在我的PagesController中(用于显示单个网站),我使用以下代码:

$page = $this->Page->findByNavtitle($name, array(
    'conditions' => array(
        'Page.visible' => '1',
        ),
    )
);

结果只应在记录标记为可见时设置。 但是这个代码块会引发错误。

API描述了这些findBy魔术方法中只允许一个参数。

如何获得有条件的结果?

3 个答案:

答案 0 :(得分:4)

您无法为 findBy 方法添加条件。而是使用查找


$page = $this->Page->find('first', array(
  'conditions' => array(
    'Page.nav_title'     => $name,
    'Page.visible' => 1
  )
));

希望有所帮助

答案 1 :(得分:0)

$ this-> Model-> findAllBy(string $ value,array $ fields,array $ order,int $ limit,int $ page,int $ recursive);

答案 2 :(得分:0)

Findbyid in cake php

$result = $this->Modelname->findById($id, array('Alpha.name'));

其中$ id是您要搜索的记录的ID,Alpha.name是您需要的字段(例如,型号Alpha的名称)