Personalmente prefiero menos magia, por lo tanto utilizo setters & getters, pero es a gusto de cada uno.
Con respecto al tema de las queries, porque utilizas partials ?, mismo la gente de doctrine te dice que solo lo utilices para optimizar y que tengas en cuenta que hace a tu código mas frágil y me extraña hasta que te este funcionando, el DQL para
dameTodas debería ser algo así:
Código DQL:
Ver originalSELECT c FROM Category c,
JOIN c.parent p
WHERE c.id > 1 AND c.activo = 1
ORDER BY p.nombre DESC, c.visible DESC
luego no estas utilizando los parametros en el DQL, esto:
debería ser:
Código PHP:
Ver original$where .= " AND p.id = :id";
...
$query->setParameter('id', $id);
te sugiero que revises todo el DQL prestando atención a la documentación
http://docs.doctrine-project.org/pro...-language.html
Saludos.