CakePHP,从模型查询

时间:2014-03-19 02:40:32

标签: php cakephp

如何在CakePHP中执行SQL查询。

我想做一些像这个代码

    $employees = $this->Employee->find('all');

但引入了我自己的SQL语句。

3 个答案:

答案 0 :(得分:3)

在Model中插入一个执行SQL语句的函数,

public function get_employees() {
     $sql = 'select * from employees';         
     $data = $this->query($sql);
     return $data;
 }

并以这种方式调用此函数:

 $employee = new Employee();
 $data = $employee->get_employees();

答案 1 :(得分:1)

在模型中,您无法编写模型名称。已经检测到了。仅限使用

$this->find('all');

答案 2 :(得分:0)

假设您的声明在EmployeesController.php

$employeeRows = $this->employee->find('all', array('conditions'=>array('id' => 100)));

如果您在另一个控制器中,则必须在查找

之前加载模型
$this->loadModel('employee');

如果您在视图中,则可以编写帮助程序并使用原始SQL

cakephp网站还提供以下控制器逻辑

$this->Picture->query("SELECT * FROM pictures LIMIT 2;");