蛋糕PHP在何处

时间:2013-11-02 13:43:47

标签: php cakephp

我正在尝试学习CakePHP,我有一个简单的问题,

我有

$this->set('settings', $this->Setting->find('all'));

控制器中的

。我想把它集中在:

find all次设置where类型等于General

我怎么能这样做?

2 个答案:

答案 0 :(得分:3)

您可以使用 findAllBy 功能。

  

findAllBy(string $ value,array $ fields,array $ order,int   $ limit,int $ page,int $ recursive)
  您可以在CakePHP Cookbook

中阅读此内容

所以你的例子看起来像这样:

$this->Setting->findAllByType('General');
$this->Setting->findAllByType($variable);    //If you want to use a variable

或者

$this->Setting->find('all', array('conditions' => array('type' => $type))); 

(不推荐)

$this->Setting->query("SELECT * FROM settings WHERE type = 'General';");

答案 1 :(得分:1)

通过为模型对象提供参数,您仍然可以使用find方法。

$settings = $this->Setting->find('all', array('conditions' => array('type' => 'General')));
$this->set('settings', $settings);

对于初学者来说,对于这个问题,最重要的是检查 this link