我是新來的教條。我創建了一個引導文件類似以下:預期學說加載模塊例外
require_once(dirname(__FILE__)."/../conf/general.php");
require_once(dirname(__FILE__).'/Doctrine/lib/Doctrine.php');
spl_autoload_register(array('Doctrine', 'autoload'));
$manager = Doctrine_Manager::getInstance();
$manager->setAttribute(Doctrine::ATTR_VALIDATE, Doctrine::VALIDATE_ALL);
$manager->setAttribute(Doctrine_Core::ATTR_AUTO_ACCESSOR_OVERRIDE, true); #for accessor overriding
$manager->setAttribute(Doctrine_Core::ATTR_AUTOLOAD_TABLE_CLASSES, true); #in order to be able to use the XTable classes
$manager->setAttribute(Doctrine_Core::ATTR_MODEL_LOADING, Doctrine_Core::MODEL_LOADING_CONSERVATIVE); #to conservatively load files
$manager->setAttribute(Doctrine::ATTR_EXPORT, Doctrine::EXPORT_ALL);
$dsn = "mysql:dbname=".DBNAME.";host=".DBHOST;
$dbh = new PDO($dsn, DBUSERNAME, DBPASS);
$conn = Doctrine_Manager::connection($dbh);
Doctrine_Core::loadModels('doc_models'); #In order to be able to work with models
php bootstrap.php命令的工作而已。 但我有目錄下Ÿ文件X.php,我需要X.php bootstrap.php中的文件,但是當我在目錄Ÿ跑X.php像
php X.php我有以下異常:
Doctrine_Exception: You must pass a valid path to a directory containing Doctrine models in /path_to_directory_of_bootstrap_file/Doctrine/lib/Doctrine/Core.php on line 635
現在,我該如何解決這個問題?
順便說一句,當我把X.php和bootstrap.php放在同一個目錄下時,它的工作方式和預期的一樣。 我也試圖要求絕對路徑,但這並沒有解決我的問題。我正在測試Ubuntu 9.10並從梨安裝原則。學說版本是1.2.0。
我試過絕對路徑,沒有用。我忘了在帖子中提到,我會更新帖子。順便說一句,當我改變我的目錄與chdir到bootstrap.php的目錄,它似乎工作。但是對於我來說,使用chdir並在每個需要bootstrap.php的文件中更改文件路徑看起來很尷尬。我認爲,必須有更好的解決方案。 – systemsfault 2009-12-01 14:36:03