我正在尝试手动将 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 文件安装 Symfony 2.0 Bundle
在我的 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
我已经看到了这个问题Symfony2 DoctrineFixturesBundle 命名空间错误,这似乎表明我可能正在使用 2.1 捆绑包和 2.0 symfony
此外,只要您使用 Symfony 2.0.x,DoctrineBundle 就永远不会在 Doctrine\Bundle 命名空间中。Symfony 2.0.x 在 bundles\Symfony 下附带了 DoctrineBundle。您的问题是您正在尝试使用过于新版本的 DoctrineFixturesBundle,它需要 Doctrine\Bundle 下的 DoctrineBundle。我的第一个建议是将捆绑包标记为 version=origin/2.0 应该可以解决这个问题。– 韭菜 3 月 11 日 20:22
如何获取https://github.com/doctrine/DoctrineFixturesBundle的 2.0 捆绑包?如果这甚至是问题所在,那么我对此一无所知,并且已经漫无目的地挠头两天了。
- Symfony:Symfony_Standard_Vendors_2.0.16
- PHP:5.3.6
- 阿帕奇:2.2