2010-12-30 4 views
1

Ich habe ein Modell gebaut, das Zend_Db_Table_Abstract erweitert und ich kann nicht herausfinden, warum ich createRow() nicht verwenden kann; hier ist mein Code:Probleme mit Zend_Db_Table_Abstract :: createRow()

class Model_User extends Zend_Db_Table_Abstract 
{ 
    public function createUser() 
    { 
     $row = $this->createRow(); 
     $row->name = 'test'; 
     $row->save(); 
    } 
} 

und in einem Controller ich benutze:

$userModel = new Model_User(); 
$userModel->createUser(); 

, die bei der Ausführung einen Fehler anzeigt

ein Fehler

Anwendungsfehler

aufgetreten

hier ist mein Setup in application.ini

resources.db.adapter = "pdo_mysql" 
resources.db.params.host = "localhost" 
resources.db.params.username = "root" 
resources.db.params.password = "pass" 
resources.db.params.dbname = "app_db" 
resources.db.isDefaultTableAdapter = true 

Ich bin sicher, dass meine Benutzer/Pass/dbname korrekt ist.

Ich würde es schätzen, wenn Sie mir in die richtige Richtung zeigen.

+0

Schalten Sie Ihre Anwendung env auf 'development' und stellen Sie sicher, dass Sie' resources.frontController.params.displayExceptions = 1' für den Entwicklungsteil in Ihrer application.ini setzen. Sie erhalten viel ausführlichere Ausnahmeinformationen. – Vika

+0

resources.frontController.params.displayExceptions = 1 hat keine weiteren Informationen erzeugt. – Gootik

Antwort

0

Vikas Hinweis ist richtig, obwohl Sie nach all den zur Entwicklung Abschnitt Ihrer App.ini Datei hinzufügen sollten

phpSettings.display_startup_errors = 1 
phpSettings.display_errors = 1 
resources.frontController.params.displayExceptions = 1 

Dann sind Sie (und wir) werden viel mehr Informationen bekommen, was falsch ist

0

Stellen Sie sicher, dass Ihre Klasse ErrorController über einen Code verfügt, der Ihnen die Fehler anzeigt. Wenn Sie den Code entfernen, der die Exception anzeigt, dann werden Sie nie wissen, was falsch ist.