Сортировать ArrayCollection с проблемой аннотации OrderBy

Я пытаюсь отсортировать ArrayCollection в определенном порядке из найденной сущности, но @ORM \ OrderBy не сработает.

Showcase.php:

/*...*/
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
/** @ORM\Entity **/
class Showcase
{
/*...*/
/** @ORM\OneToMany(targetEntity="ShowcaseGelato", mappedBy="showcase", fetch="EAGER")
* @ORM\OrderBy({"position" = "ASC"}) **/
private $gelatos;

public function __construct()
{
$this->gelatos = new ArrayCollection();
}
/*...*/

ShowcaseGelato.php:

    use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
*/
class ShowcaseGelato
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;

/**
* @ORM\ManyToOne(targetEntity="Gelato", fetch="EAGER")
*/
private $gelato;

/**
* @ORM\ManyToOne(targetEntity="Showcase", inversedBy="gelatos")
* @ORM\JoinColumn(name="showcase_id", referencedColumnName="id")
*/
private $showcase;

/**
* @ORM\Column(name="position", type="integer")
*/
private $position;

ShowcaseController.php:

/*...*/
public function indexAction()
{
$em = $this->getDoctrine()->getManager();
$showcase = $em->getRepository('TodaysGelatoBundle:Showcase')->find(1);
return $this->render(
'TodaysGelatoBundle:Showcase:index.html.twig', array(
'showcase' => $showcase,
)
);
}

И результаты:
введите описание изображения здесь

Что мне не хватает? Любая помощь будет оценена.

Вид проекта базы данных: введите описание изображения здесь

0

Решение

Я пытаюсь отсортировать ArrayCollection в определенном порядке из найденной сущности, но @ORM \ OrderBy не сработает.

Showcase.php:

/*...*/
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
/** @ORM\Entity **/
class Showcase
{
/*...*/
/** @ORM\OneToMany(targetEntity="ShowcaseGelato", mappedBy="showcase", fetch="EAGER")
* @ORM\OrderBy({"position" = "ASC"}) **/
private $gelatos;

public function __construct()
{
$this->gelatos = new ArrayCollection();
}
/*...*/

ShowcaseGelato.php:

    use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
*/
class ShowcaseGelato
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;

/**
* @ORM\ManyToOne(targetEntity="Gelato", fetch="EAGER")
*/
private $gelato;

/**
* @ORM\ManyToOne(targetEntity="Showcase", inversedBy="gelatos")
* @ORM\JoinColumn(name="showcase_id", referencedColumnName="id")
*/
private $showcase;

/**
* @ORM\Column(name="position", type="integer")
*/
private $position;

ShowcaseController.php:

/*...*/
public function indexAction()
{
$em = $this->getDoctrine()->getManager();
$showcase = $em->getRepository('TodaysGelatoBundle:Showcase')->find(1);
return $this->render(
'TodaysGelatoBundle:Showcase:index.html.twig', array(
'showcase' => $showcase,
)
);
}

И результаты:
введите описание изображения здесь

Что мне не хватает? Любая помощь будет оценена.

Вид проекта базы данных: введите описание изображения здесь

самый старый «data-shortcut =» O

Другие решения

голосует «data-shortcut =» V

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector