¿Cómo realizo consultas en una entidad?Doctrine 2, query inside entities
namespace Entities\Members;
/**
* @Entity(repositoryClass="\Entities\Member\MembersRepository")
* @Table(name="Members")
* @HasLifecycleCallbacks
*/
class Members extends \Entities\AbstractEntity
{
/**
* @Id @Column(name="id", type="bigint",length=15)
* @GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @Column(name="userid", type="bigint", length=26, nullable=true)
*/
protected $userid;
/**
* @Column(name="fname", type="string", length=255,nullable=true)
*/
protected $fname;
/**
* @OneToMany(targetEntity="\Entities\Users\Wall", mappedBy="entry", cascade={"persist"})
*/
protected $commententries;
public function __construct()
{
$this->commententries = new \Doctrine\Common\Collections\ArrayCollection();
}
}
ejemplo, me gustaría tener una función dentro de esta entidad llamada: filter()
y quiero ser capaz de filtrar la colección commententries
. Debería devolver una colección con una determinada condición, como id=1
. Básicamente debería estar filtrando los datos recibidos de la consulta de unión.
Así que algo como esto:
$this->commententries->findBy(array('id' => 1));
Pero, obviamente, esto no funciona.
Puede hacer esto exactamente usando un repositorio personalizado que ya definió usando @Entity (repositoryClass = "\ Entities \ Member \ MembersRepository"). Verifique mi respuesta a continuación: http://stackoverflow.com/a/19319313/1697459 – Wilt