2013-09-16 47 views
0

我必須將現有網站移至其他主機(使用相同的軟件)。 現在,當第二個用戶試圖做實體(編程添加,編輯或刪除)該網站失敗,出現以下錯誤的東西:在代理中找不到類'實體用戶'

Fatal error: Class 'Entity\User' not found in /home/.../www/includes/Objects/Proxies/__CG__EntityUser.php on line 9 

下面是配置:

ini_set('include_path', ROOT_PATH.'/includes'); 
require_once(ROOT_PATH.'/includes/Doctrine/ORM/Tools/Setup.php'); 
Doctrine\ORM\Tools\Setup::registerAutoloadPEAR(); 

use Doctrine\ORM\Tools\Setup, 
    Doctrine\ORM\EntityManager, 
    Doctrine\ORM\Configuration, 
    Doctrine\DBAL\Event\Listeners\MysqlSessionInit; 

$cache = new \Doctrine\Common\Cache\ArrayCache; 
$config = new Configuration; 
$driverImpl = $config->newDefaultAnnotationDriver(ROOT_PATH.'/includes/Objects'); 
$driverImpl->getAllClassNames(); 
$config->setMetadataDriverImpl($driverImpl); 
$config->setProxyDir(ROOT_PATH.'/includes/Objects/Proxies'); 
$config->setProxyNamespace('Objects\Proxies'); 
// developer mode 
//$config->setAutoGenerateProxyClasses(true); 
$config->setQueryCacheImpl($cache); 
$em = EntityManager::create(array(
    'driver' => 'pdo_mysql', 
    'unix_socket' => '/var/lib/mysql/mysql.sock', 
    'charset' => 'utf8', 
    'host' => DB_HOST, 
    'user' => DB_USER, 
    'password' => DB_PASS, 
    'dbname' => DB_NAME 
), $config); 
$em->getEventManager()->addEventSubscriber(new MysqlSessionInit('utf8', 'utf8_unicode_ci')); 

正如我所說的我沒有改變什麼代碼...

當在單用戶狀態的網站 - 一切都很好..

什麼可以嗎?謝謝

回答

1

有時我不得不手動創建./doctrine的代理ORM:生成的代理(在命令行工具)

但要確保你的文件權限是正確的,因爲有時他們正努力成爲自動生成,但服務器不會允許它。