【发布时间】:2015-08-11 21:34:50
【问题描述】:
当我使用时:
php app/console doctrine:fixtures:load --fixtures=/var/www/Symfony/src/BISSAP/ForumBundle/DataFixtures/ORM**
我收到以下错误:
PHP 可捕获的致命错误:参数 1 传递给 BISSAP\ForumBundle\Entity\Forum::setCategory() 必须是 BISSAP\ForumBundle\Entity\Category,给定 null,调用 /var/www/Symfony/src/BISSAP/ForumBundle/DataFixtures/ORM/LoadForum.php 在第 40 行并定义在 /var/www/Symfony/src/BISSAP/ForumBundle/Entity/Forum.php 在第 184 行
我的灯具 - LoadForum.php:
<?php
namespace BISSAP\ForumBundle\DataFixtures\ORM;
use Doctrine\Common\DataFixtures\FixtureInterface;
use Doctrine\Common\Persistence\ObjectManager;
use BISSAP\ForumBundle\Entity\Forum;
use BISSAP\ForumBundle\Entity\Category;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class LoadForum extends Controller implements FixtureInterface
{
public function load(ObjectManager $manager)
{
$data=array(array('NAME','DESCRTIPTION','60',$manager->getRepository('BISSAPForumBundle:Category')->find('1')),
array('NAME2','DESCRTIPTION2','60',$manager->getRepository('BISSAPForumBundle:Category')->find('2')));
foreach ($data as $for) {
$forum = new Forum();
$forum->setName($for[0]);
$forum->setDescription($for[1]);
$forum->setOrdre($for[2]);
$forum->setCategory($for[3]);
$manager->persist($forum);
}
$manager->flush();
}
}
【问题讨论】: