我正在尝试学习CakePHP,我有一个简单的问题,
我有
$this->set('settings', $this->Setting->find('all'));
。我想把它集中在:
find all
次设置where
类型等于General
我怎么能这样做?
答案 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 。