В моей текущей модели у меня есть 2 объекта: Student
и StudentOrdersHistory
. Мы используем таблицу истории для записи всех заказов от учащегося.Doctrine 2 - Ссылка на конкретный связанный элемент сбора
Однако нам особенно необходимо работать с последней историей заказов. Во-первых, я использовал некоторые циклическую ссылку, как в следующем:
StudentOrderHistory.student_id --> Student
Student.latest_order --> StudentOrderHistory
Причина этого заключается в том, что мы ожидаем, что отношение к сотни строк (студент здесь это просто пример, чтобы сделать это просто спросить, что мне нужно), но поскольку мы в основном должны работать с последним, мы решили, что это бесполезно загружать все из них, а затем делать $student->orders->last()
, так как придется загружать все записи.
Излишне говорить, что эта реализация приносила боль при удалении Student
, так как циркулярная ссылка не позволит мне сделать это, не дав сначала удалить ссылку Student.latest_order
.
Есть ли в любом случае я могу загрузить в Student
недвижимость (например, Student::$latestOrder
) только для латтестов, использующих DQL?