脚本宝典收集整理的这篇文章主要介绍了cakephp datasource调用未定义的方法,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
// app/Model/Datasource/FeedSource.PHP App::uses('DataSource','Model/Datasource'); class FeedSource extends DataSource { public function abcd() { echo 'Hello World!'; } }
在我的database.PHP中:
public $Feed = array( 'datasource' => 'FeedSource' );
在Feeda模型中:
class Feeda extends AppModel { public $useTable = false; public $useDbConfig = 'Feed'; }
在列表控制器中:
$this->loadModel('Feeda'); $this->Feeda->abcd();
Error: Call to undefined method FeedSource::query()
怎么解决?
谢谢…
DataSource没有方法查询,DboSource也没有.将代码更新为:
App::uses('DboSource','Model/Datasource'); class FeedSource extends DboSource {}
编辑:看起来不是问题.在模型中有一个魔术__call方法调用
$this-> getDataSource() – > query($method,$params,$this); Source您需要自己实现.
class FeedSource extends DataSource { public function abcd() { echo 'Hello World!'; } public function query($method,$Model) { // you may customize this to your needs. if (method_exists($this,$method)) { return call_user_func_array(array($this,$method),$params); } } }
以上是脚本宝典为你收集整理的cakephp datasource调用未定义的方法全部内容,希望文章能够帮你解决cakephp datasource调用未定义的方法所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。