Fuente de datos cakephp Llamada al método indefinido

Creé un datasource simple:

 // app/Model/Datasource/FeedSource.php App::uses('DataSource', 'Model/Datasource'); class FeedSource extends DataSource { public function abcd() { echo 'Hello World!'; } } 

en mi database.php :

 public $feed = array( 'datasource' => 'FeedSource' ); 

Y en el modelo de Feeda :

 class Feeda extends AppModel { public $useTable = false; public $useDbConfig = 'feed'; } 

en el controlador de list :

 $this->loadModel('Feeda'); $this->Feeda->abcd(); 

Pero, devuelve un error fatal:

 Error: Call to undefined method FeedSource::query() 

¿Como resolverlo?

Gracias…

Quizás quisiste decir DboSource lugar de DataSource .

DataSource no tiene consulta de método, DboSource sí lo hace. Actualiza tu código para que se vea así:

 App::uses('DboSource', 'Model/Datasource'); class FeedSource extends DboSource {} 

Editar: Parece que ese no es el problema. En el Model hay un método mágico __call que llama a $this->getDataSource()->query($method, $params, $this); Fuente Usted necesita implementar esto usted mismo.

 class FeedSource extends DataSource { public function abcd() { echo 'Hello World!'; } public function query($method, $params, $Model) { // you may customize this to your needs. if (method_exists($this, $method)) { return call_user_func_array(array($this, $method), $params); } } }