Feature #88734

Extbase: M:N Relation – Sorting of Child Model Records by $defaultOrderings

Added by Hagen Gebauer 4 months ago. Updated 3 months ago.

Should have
Target version:
Start date:
Due date:
% Done:


PHP Version:
relation, m:n
Sprint Focus:


In an M:N relation, the $defaultOrderings as defined in the model repositories should be taken into account – at least in case the parent_child_mm.sorting property is set to 0.

I have an extension with two models that are m:n related. You can edit the relations from both sides by use of a selectCheckBox list of records. The child model is always supposed to be sorted by a date field in ORDER_DESCENDING, as defined in the model’s repository:

protected $defaultOrderings = ['date_open' => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_DESCENDING];

The frontend detail view of the parent model shows the related records of the child model. The sorting is correct when I select the relation from the parent model record as T3 stores the sorting in parent_child_mm.sorting. This sorting order is defined by the TCA setting of the selectCheckBox, thus the order of the checkboxes in the backend form.

But if I only select the relation in the child model records (and thus parent_child_mm.sorting=0), the sorting in the frontend detail view is random: in my local development version it’s correct, in the production version it’s not (I reckon, it’s being sorted by uid::ASC).

I’ve been searching for ways to determine the sorting in the frontend. Some suggested the <v:iterator.for> viewhelper – but I think it should not be set in the view but in the controller or repository. And besides I don’t want to have the additional dependency on ext_vhs. Others suggested to create a specific repository method in the child model – but they referred to old T3 versions and I couldn’t make those ideas work in T3v9.

I think the $defaultOrdering should be taken into account – after all, it’s what the property name DEFAULT ORDERING suggests.


#1 Updated by Hagen Gebauer 4 months ago

  • Subject changed from Extbase: M:N Relation – Sorting of Child Model Elements by $defaultOrderings to Extbase: M:N Relation – Sorting of Child Model Records by $defaultOrderings

#2 Updated by Claus Harup 3 months ago

I encountered the excact same problem :-)

Also available in: Atom PDF