2012-05-03 48 views
0

我正在使用Netbeans IDE 6.9.1製作簡單的快速啓動項目我已在模型文件夾中映射到models/dbTable /文件夾中的DBTable類中的GuestBookMapper類Guests類是目前這是一個DbTable類的桌子客人。但它顯示以下錯誤。 致命錯誤:類 'Application_Model_GuestbookMapper' 未發現在C:\ XAMPP \ htdocs中\快速啓動\程序\ \控制器上IndexController.php線13在zend中未檢測到模型類

這裏是我的application.ini

[production] 
phpSettings.display_startup_errors = 0 
phpSettings.display_errors = 0 
includePaths.library = APPLICATION_PATH "/../library" 
bootstrap.path = APPLICATION_PATH "/Bootstrap.php" 
bootstrap.class = "Bootstrap" 
appnamespace = "Application" 
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers" 
resources.frontController.params.displayExceptions = 0 
resources.db.adapter = 'PDO_MYSQL' 
resources.db.params.host = "localhost" 
resources.db.params.username = "root" 
resources.db.params.password = "" 
resources.db.params.dbname = "guestbook.db" 
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts/" 
[staging : production] 

[testing : production] 
phpSettings.display_startup_errors = 1 
phpSettings.display_errors = 1 

[development : production] 
phpSettings.display_startup_errors = 1 
phpSettings.display_errors = 1 
resources.frontController.params.displayExceptions = 1 

這裏是我的GuestbookMapper類

<?php 
class Application_Model_GuestbookMapper 
{ 
    protected $_dbTable; 
    public function setDbTable($dbTable) 
    { 
     if (is_string($dbTable)) { 
      $dbTable = new $dbTable(); 
     } 
     if (!$dbTable instanceof Zend_Db_Table_Abstract) { 
      throw new Exception('Invalid table data gateway provided'); 
     } 
     $this->_dbTable = $dbTable; 
     return $this; 
    } 

    public function getDbTable() 
    { 
     if (null === $this->_dbTable) { 
      $this->setDbTable('Application_Model_DbTable_Guests'); 
     } 
     return $this->_dbTable; 
    } 

    public function save(Application_Model_Guestbook $guestbook) 
    { 
     $data = array(
      'email' => $guestbook->getEmail(), 
      'comment' => $guestbook->getComment(), 
      'created' => date('Y-m-d H:i:s'), 
     ); 

     if (null === ($id = $guestbook->getId())) { 
      unset($data['id']); 
      $this->getDbTable()->insert($data); 
     } else { 
      $this->getDbTable()->update($data, array('id = ?' => $id)); 
     } 
    } 

    public function find($id, Application_Model_Guestbook $guestbook) 
    { 
     $result = $this->getDbTable()->find($id); 
     if (0 == count($result)) { 
      return; 
     } 
     $row = $result->current(); 
     $guestbook->setId($row->id) 
        ->setEmail($row->email) 
        ->setComment($row->comment) 
        ->setCreated($row->created); 
    } 

    public function fetchAll() 
    { 
     $resultSet = $this->getDbTable()->fetchAll(); 
     $entries = array(); 
     foreach ($resultSet as $row) { 
      $entry = new Application_Model_Guestbook(); 
      $entry->setId($row->id) 
        ->setEmail($row->email) 
        ->setComment($row->comment) 
        ->setCreated($row->created); 
      $entries[] = $entry; 
     } 
     return $entries; 
    } 
} 

請大家幫忙。

+0

顯示您的控制器代碼。 – RockyFord

+0

「Application_Model_GuestbookMapper」類是否存儲在文件「application/models/GuestbookMapper.php」中?這是標準資源自動加載器所期待的。 –

回答

0

嘗試增加此:

$moduleLoader = new Zend_Application_Module_Autoloader(array(
     'namespace' => 'Application', 
     'basePath' => APPLICATION_PATH 
     )); 
在初始化

()在GuestController.php文件的方法。