Я новичок в Symblog 2 и следую этому руководству для Symblog2.
Я создал свою модель данных и попытался загрузить тестовые данные в мою БД, используя Doctrine 2 fixtures.
Я скачал необходимые пакеты и добавил следующее в autoload.php
:
'Doctrine\\Common\\DataFixtures' => __DIR__.'/../vendor/doctrine-fixtures/lib',
'Doctrine\\Common' => __DIR__.'/../vendor/doctrine-common/lib',
и следующее в AppKernel.php
:
new Symfony\Bundle\DoctrineFixturesBundle\DoctrineFixturesBundle(),
Мой класс приспособлений выглядит так:
setName('Poland');
$team1->setImg('./img/POL.png');
$team1->setKitHome('./img/POL_1.png');
$team1->setKitAway('./img/POL_2.png');
$manager->persist($team1);
$manager->flush();
}
}
Когда я пытаюсь запустить php app/console doctrine:fixtures:load
, я получаю следующее исключение:
Fatal error: Объявление Soccer\MainBundle\DataFixtures\ORM\TeamFixtures::load() должно быть совместимо с объявлением Doctrine\Common\DataFixtures\FixtureInterface: :load() in D:\xampp\htdocs\soccertips\em-symfony\src\Soccer\MainBundle\DataFixtures\ORM\TeamFixtures. php на строке 8
Стек вызовов: 0.0004 328688 1. {main}() D:\xampp\htdocs\soccertips\em-symfony\app\console:0 0.0283 2043272 2. Symfony\Component\Console\Application->run() D:\xampp\htdocs\soccertips\em-symfony\app\console:22 0.0344 2230520 3. Symfony\Bundle\FrameworkBundle\Console\Application->doRun() D:\xampp\htdocs\soccertips\em-symfony\vendor\symfony\src\Symfony\Component\Console\Application.php:118 3.3961 18394992 4. Symfony\Component\Console\Application->doRun() D:\xampp\htdocs\soccertips\em-symfony\vendor\symfony\src\Symfony\Bundle\FrameworkBundle\Console\Application.php:75 3.3998 18394992 5. Symfony\Component\Console\Command\Command->run() D:\xampp\htdocs\soccertips\em-symfony\vendor\symfony\src\Symfony\Component\Console\Application.php:194 3.4006 18395336 6. Symfony\Bundle\DoctrineFixturesBundle\Command\LoadDataFixturesDoctrineCommand->execute() D:\xampp\htdocs\soccertips\em-symfony\vendor\symfony\src\Symfony\Component\Console\Command\Command.php:224 3.4056 18499160 7. Doctrine\Common\DataFixtures\Loader->loadFromDirectory() D:\xampp\htdocs\soccertips\em-symfony\vendor\bundles\Symfony\Bundle\DoctrineFixturesBundle\Command\LoadDataFixturesDoctrineCommand.php:97 3.4084 18509624 8. require_once('D:\xampp\htdocs\soccertips\em-symfony\src\Soccer\MainBundle\DataFixtures\ORM\TeamFixtures. php') D:\xampp\htdocs\soccertips\em-symfony\vendor\doctrine-fixtures\lib\Doctrine\Common\DataFixtures\Loader.php:92
Я понимаю сообщение об ошибке, но, на мой взгляд, мой метод load()
совместим с FixtureInterface::load
.
Может кто-нибудь подсказать мне, что я упускаю? Я следовал руководству шаг за шагом.