Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Salut à tous !
tout d'abord je suis nouveau dans le monde du php , mais je me suis rapidement lancer dans le ZF pour la realisation d'un projet. Donc soyez indulgent .
Je desire basiquement récupérer des données de ma BDD via l'ORM.
j'ai donc créer un classe metier 'page' dont voici la sommaire trame :
<?php Zend_loader::loadClass("Zend_Db_Table");
class Page extends Zend_Db_Table_Abstract
{
protected $_name = 'page';
protected $_primary = 'id';
protected $_sequence = true;
public function findByName($psName)
{
$where = $this->getAdapter()->quoteInto('nom = ?',(string)$psName);
return $this->fetchRow($where);
}
}dans mon controleur je veux juste tester quelque chose du genre :
function init() {
$this->moPage = new Page();
$this->moView = Zend_registry::get('view');
}
public function indexAction() {
$findedPages = $this->moPage->find(1);
echo $this->moView->render('scripts/gabarit.php');
}et la patatra !! j'ai une belle erreur :
Citation:
Call to a member function quoteInto() on a non-object in D:\WWW\...\Zend\Db\Table\Abstract.php on line 628
j'ai donc l'impression qu'il ne veut pas recuperer mon adapter que j'ai pourtant defini dans la page d'index comme ceci :
$dbAdapter = Zend_Db::factory($config->db->adapter , $config->db->config->asArray());
Zend_Db_Table_Abstract::setDefaultAdapter($dbAdapter);je ne suis pas sur d'etre très clair , mais si quelqu'un avez un piste merci de bien vouloir me sortir de cette galère !!
Dernière modification par kelton (23-05-2007 15:28:43)
Hors ligne
ce qui est bizarre c'est que si je fait :
$oAdapter = $this->moPage->getAdapter();
Zend_Debug::dump($oAdapter, $label='adapter : ', $echo=true);et bien comme résultat j'ai : NULL
Hors il me semble qu'il devrait me renvoyer un Objet .
Par contre si j'affiche les info de ma table :
$oPage = $this->moPage->info();
Zend_Debug::dump($oPage, $label='page : ', $echo=true);Voila ce quil me donne en retour
page : array(9) {
["schema"] => string(8) "site-epl"
["name"] => string(4) "page"
["cols"] => array(0){ }
["primary"] => array(1) { [0] => string(2) "id" }
["metadata"] => array(0) { }
["rowClass"] => string(17) "Zend_Db_Table_Row"
["rowsetClass"] => string(20) "Zend_Db_Table_Rowset"
["referenceMap"] => array(0) { } ["dependentTables"] => array(0) { }
}ce qui m'inquete c'est le ["metadata"] => array(0) ;
si ca peut vous donner des indices !!
Hors ligne
Pages: 1