Symfony2+;OneToMany-从数据库读取错误

Symfony2+;OneToMany-从数据库读取错误,symfony,orm,one-to-many,Symfony,Orm,One To Many,我正在尝试学习向数据库读/写数据,但我遇到了一个巨大的问题: 我的实体看起来: 卡蒂戈里: use Doctrine\Common\Collections\ArrayCollection; /** * @ORM\Entity * @ORM\Table(name="kategorie") */ class Kategorie { /** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedVa

我正在尝试学习向数据库读/写数据,但我遇到了一个巨大的问题:

我的实体看起来:

卡蒂戈里:

use Doctrine\Common\Collections\ArrayCollection;

/**
 * @ORM\Entity
 * @ORM\Table(name="kategorie")
 */
class Kategorie
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $idkategorii;

    /**
     * @ORM\Column(type="string", length=50)
     */
    protected $nazwa;

     /**
     * @ORM\OneToMany(targetEntity="Ogloszenia", mappedBy="ogloszenia")
     */
    protected $ogloszenia;
奥格洛塞尼亚: 使用条令\ORM\Mapping作为ORM

/**
 * @ORM\Entity
 * @ORM\Table(name="ogloszenia")
 */
class Ogloszenia
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id; 

    /**
     * @ORM\Column(type="string",length=100)
     */
    protected $tytul; 

    /**
     * @ORM\Column(type="string", length=120)
     */
    protected $tytul_seo; //tytul bez polskich znaków etc.

    /**
     * @ORM\Column(type="text")
     */
    protected $tresc; //tresc ogloszenia

    /**
     * @ORM\Column(type="string",length=50)
     */
    protected $dodal; //imie osoby ktora dodala ogloszenie

    /**
     * @ORM\Column(type="string", length=50)
     */
    protected $kontakt; //nr tel lub mail

    /**
     * @ORM\ManyToOne(targetEntity="Kategorie", inversedBy="kategoria")
     * @ORM\JoinColumn(name="kategoria", referencedColumnName="idkategorii")
     */
    protected $kategoria;
现在,在我的控制器中,我尝试读取所有值:

 public function odczytajAction()
    {  
        $id = 1;
        $kategoria = $this->getDoctrine()
                ->getRepository('FrontendOgloszeniaBundle:Kategorie')
                ->find($id);

        $ogl = $kategoria->getOgloszenia();
     foreach($ogl as $o)
     {
         print_r($o);
     }
       return new Response('test odczytu');

    }
不幸的是,symfony2给了我一个如下错误

 Notice: Undefined index: ogloszenia in /home/sl4sh/public_html/Projekt1/vendor/doctrine/orm/lib/Doctrine/ORM/Persisters/BasicEntityPersister.php line 1574
500 Internal Server Error - ErrorException 

那么,请告诉我我的代码有什么问题?

您的mappedBy注释无效:

/**
 * @ORM\OneToMany(targetEntity="Ogloszenia", mappedBy="kategoria")
 */
protected $ogloszenia;
还有反边:

/**
 * @ORM\ManyToOne(targetEntity="Kategorie", inversedBy="ogloszenia")
 * @ORM\JoinColumn(name="kategoria", referencedColumnName="idkategorii")
 */
protected $kategoria;

那么它应该是什么样子呢?