DoctrineFixturesBundleをsymfonyプロジェクトに手動で追加しようとすると、次のエラーが発生します。
C:\wwwnet\symfony>php app/console doctrine:fixtures:load
Fatal error: Class 'Doctrine\Bundle\DoctrineBundle\Command\DoctrineCommand' not found in C:\wwwnet\symfony\vendor\bundles\Doctrine\Bundle\FixturesBundle\Command\LoadDataFixturesDoctrineCommand.php on line 34
ここに記載されている手順に従いました。ZipファイルからSymfony2.0バンドルをインストールする方法
私のAppKernelに以下を追加しました:
$bundles[] = new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle();
自動ロードでは、次のようになります。
'Doctrine\\Bundle' => __DIR__.'/../vendor/bundles',
//'Symfony\\Bundle\\DoctrineFixturesBundle' => __DIR__.'/../vendor/bundles',
//'Doctrine\\Bundle\\DoctrineFixturesBundle' => __DIR__.'/../vendor/bundles',
'Doctrine\\Common\\DataFixtures' => __DIR__.'/../vendor/doctrine-fixtures/lib',
'Doctrine\\Common' => __DIR__.'/../vendor/doctrine-common/lib',
'Doctrine\\DBAL' => __DIR__.'/../vendor/doctrine-dbal/lib',
'Doctrine' => __DIR__.'/../vendor/doctrine/lib',
バンドルを次の場所に追加しました:
C:\wwwnet\symfony\vendor\bundles\Doctrine\Bundle\FixturesBundle
私はこの質問Symfony2DoctrineFixturesBundle名前空間エラーを見ました、そしてそれは私がおそらく2.0symfonyで2.1バンドルを使用していることを示唆しているようです
また、Symfony 2.0.xを使用している限り、DoctrineBundleがDoctrine\Bundle名前空間に含まれることはありません。Symfony 2.0.xは、bundles\Symfonyの下のDoctrineBundleに同梱されています。問題は、Doctrine\Bundleの下にあるDoctrineBundleを期待するDoctrineFixturesBundleの新バージョンを使用しようとしていることです。私の最初の提案は、バンドルをversion = origin / 2.0にタグ付けすることで、これを解決できるはずです。–ネギ3月11日20:22
https://github.com/doctrine/DoctrineFixturesBundleの2.0バンドルを入手するにはどうすればよいですか?それでも問題があれば、私はこれに暗闇の中にいて、2日間ぶらぶらと頭をかいてきました。
- Symfony:Symfony_Standard_Vendors_2.0.16
- PHP:5.3.6
- Apache:2.2