我有大约25个连接查询,我需要构建在CakePHP项目中运行。
在MySQL WorkBench或phpMyAdmin中构建查询要快得多。然后放入PHP代码中,而不是多次使用搞砸的cakePHP模型与MySQL查询没有一对一的关系。
是否有一个无表或多表"采取任何MySQL"的例子,以减少或消除CakePHP的复杂性?TLDR:
使用模型的query()
方法来编写任何你想要的MySQL。
更多细节:
听起来你好像还没有读完这本书。在抨击你不理解的东西之前,你应该试试这个。
对于其他想要学习如何在CakePHP中加入东西的人:
如何使用CakePHP加入
和
如何在CakePHP中运行任何MySQL查询
CakePHP提供了Model::query(),让你有更多的控制权。如果你真的想放弃CakePHP的find方法,我倾向于你也使用预处理语句。
$db = $this->getDataSource();
$db->fetchAll(
'SELECT * from users where username = ? AND password = ?',
array('jhon', '12345')
);
$db->fetchAll(
'SELECT * from users where username = :username AND password = :password',
array('username' => 'jhon','password' => '12345')
);
这里有一个提示:
query()不像它的功能那样尊重$Model->cacheQueries本质上与调用模型不相交。为了避免缓存调用query,提供第二个参数false,即:$cachequeries = false)