Как вы расширяете сущность в Symfony2, как раньше в Symfony 1?

В старых версиях Symfony вы использовали возможность создавать новые объекты внутри объекта данных, расширяя класс модели с помощью расширенного подкласса.

Например, у меня была модель вопросника с таблицей результатов. В этой таблице результатов был результат.php класс модели, который использовался для установки и получения результатов через Doctrine. Затем я использовал подкласс модели ResultPeer.php, чтобы добавить новую функцию к объекту Result, которая принимает результат и в зависимости от фиксированного набора пороговых значений вычисляет оценку и соответствующий цвет.

В новой версии Symfony2, использующей Doctrine2, я изо всех сил пытаюсь найти лучший способ сделать это. При создании сущности я могу найти только в документации возможность добавлять объекты на основе взаимосвязей структуры данных.

Я посмотрел на репозитории сущностей, но похоже, что они не расширяют или не добавляют функциональность к исходному объекту. Кажется, что он возвращает объекты данных на основе запросов, которые более сложны, чем стандартные функции запросов.

Я также посмотрел на службы, которые я могу использовать для сбора объекта, а затем с помощью объекта создать новый массив, который включает этот объект и вновь созданные данные, но это просто не кажется правильным или следует философии, согласно которой Symfony является все о.

Кто-нибудь знает, как можно добавлять функции к существующему объекту данных. Я нашел это действительно полезным в старой версии Symfony, но не могу найти альтернативы в новой версии Symfony2.

9
задан j0k 12 November 2012 в 11:58
поделиться