Ho creato un repository per la mia entità Articoli e sto cercando di ottenere tutti i valori ordinati per ID DESC. Ma, otterrò sempre i valori ordinati da id ASC. Qui è la mia ArticleRepository.php:Symfony2, Doctrine2, findBy() ordine non funzionante
<?php
namespace Acme\BlogBundle\Entity;
use Doctrine\ORM\EntityRepository;
class ArticleRepository extends EntityRepository
{
public function findAll()
{
return $this->findBy(array(), array('id' => 'DESC'));
}
public function findOneBySlug($slug)
{
$query = $this->getEntityManager()
->createQuery('
SELECT p FROM AcmePagesBundle:Article a
WHERE a.slug = :slug
')
->setParameter('slug', $slug);
try {
return $query->getSingleResult();
} catch (\Doctrine\ORM\NoResultException $e) {
return false;
}
}
}
Tutte le idee?
Grazie v'è il problema. Non avevo il parametro 'repositoryClass()' nella mia entità. Grazie. –
Vale la pena di chiarire qualcosa su questo codice. Per poter creare e utilizzare le tue query, devi indicare la relazione come @Ahmed spiegare nella prima parte del suo codice, ma la seconda parte ... findBy (...), non ha bisogno del primo parte del codice, dal momento che si chiama una funzione "findBy", che appartiene alla funzionalità Symfony/Doctrine. –
nell'esempio di L3 manca ')' prima ';' – iiic