Hola, soy relativamente nuevo con symfony2 y estoy atascado en un problema que me tiene desesperado. He seguido el manual y al parecer hago todo bien, pero me salta un error y no se si el problema de la query o de las relaciones.
Tengo una tabla Discover la cual puede tener varios Article. Es decir un articulo puede ser descubierto varias veces (relacion many to one).
El codigo es el siguiente:
<?php
namespace IT\bagBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
use IT\bagBundle\Entity\Discover;
/**
* IT\bagBundle\Entity\Article
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="IT\bagBundle\Entity\A rticleRepository")
*/
class Article
{
/**
* @var integer $id
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*
*/
private $id;
/**
* @ORM\OneToMany(targetEntity="Discover", mappedBy="Article")
*/
protected $discovers;
public function __construct()
{
$this->discovers = new ArrayCollection();
}
................
<?php
namespace IT\bagBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use IT\bagBundle\Entity\Article;
/**
* IT\bagBundle\Entity\Discover
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="IT\bagBundle\Entity\D iscoverRepository")
*/
class Discover
{
/**
* @var integer $id
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var integer $articleId
*
* @ORM\Column(name="articleId", type="integer")
* @ORM\ManyToOne(targetEntity="Article", inversedBy="discovers")
* @ORM\JoinColumn(name="id", referencedColumnName="id")
*/
private $articleId;
.......
Y tengo la siguiente query:
class ArticleRepository extends EntityRepository
{
public function findArticleById(1)
{
return $this->getEntityManager()->createQuery('SELECT a FROM
bagBundle:Article a JOIN a.discovers d
WHERE d.articleId = 1')->execute();
}
}
Y obtengo el siguiente error:
Notice: Undefined index: Article in /Applications/MAMP/htdocs/bag/vendor/doctrine/lib/Doctrine/ORM/Query/SqlWalker.php line 747
El problema (como soy principiante) es que no se donde esta el fallo, si en la query el las relaciones o en el planteamiento
Alguna ayuda?? muchas gracias