0

既存のサイトを別のホスティングに移動する必要がありました (同じソフトウェアを使用)。現在、2 番目のユーザーがエンティティで何かをしようとすると (プログラムで追加、編集、または削除)、サイトは次のエラーで失敗します。

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'));

私が言ったように、コードは何も変更していません...

サイトがシングル ユーザー状態の場合 - すべて問題ありません。

それは何でしょうか?ありがとうございました

4

1 に答える 1

1

./doctrine orm:generate-proxies (コマンド ライン ツールで) を使用して手動でプロキシを作成する必要がある場合があります。

ただし、ファイルのアクセス許可が正しいことを確認してください。自動生成を試みてもサーバーが許可しない場合があるためです。

于 2013-09-16T16:00:54.753 に答える