Я пытаюсь упорядочить / отфильтровать запрос с помощью Doctrine, но используя настраиваемое поле (т. Е. Поле, которого нет в таблице).
У меня есть этот класс "Entry":
class SosfEntry
{
/**
* @var int
* @Groups("id")
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var DateTime
* @Groups("date")
*
* @ORM\Column(name="`date`", type="datetime", nullable=true)
*/
protected $date;
/**
* @var string
* @Groups("ref")
*
* @ORM\Column(name="ref", type="string", length=255, nullable=true)
*/
protected $ref;
/**
* CUSTOM -------------------------------
*/
/**
* @var integer
* @Groups("achievment_percentage")
*/
protected $achievment_percentage;
/**
* @return int
*/
public function getAchievmentPercentage(): ? int
{
// value between 0 and 100 (here 100 for the example)
return 100;
}
Я делаю Doctrine запрос Builder, как это:
SELECT a FROM Entry a WHERE a.achievment_percentage = :achievment_percentage ORDER BY a.date DESC
Но я получил эту ошибку:
Error: Class Entry has no field or association named achievment_percentage.
Есть ли способ сделать это непосредственно из построителя запросов?Или мне нужно сделать несколько фильтров вручную после запроса?