2

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

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

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

仅当记录标记为可见时才应设置结果。但是这个代码块会抛出一个错误。

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

我怎样才能得到有条件的结果?

4

3 回答 3

4

您不能向findBy方法添加条件。而是使用find


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

希望能帮助到你

于 2012-01-04T11:16:57.643 回答
0

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

于 2013-12-18T07:37:41.890 回答
0

蛋糕php中的findbyid

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

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

于 2016-01-22T10:59:36.047 回答