Сортировка по одному из множества связанных объектов - PullRequest
0 голосов
/ 29 сентября 2011

Объект B (Книга) имеет отношение один-ко-многим с объектом D (Описание). Идея состоит в том, что книга имеет разные описания для разных языков.

Я хочу отсортировать книги по названию (D.title) для заданного языка (D.languageID)

Если бы B имел отношение один к одному с D, я бы сделал что-то вроде:

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"d.title" ascending:YES];

Конечно, вы можете сказать, что модель не препятствует тому, чтобы в книге было много описаний с одним и тем же languageID. Но в этом случае для меня подойдет любое (например, первое) описание.

Моя модель не так? Какое лучшее решение сейчас?

1 Ответ

0 голосов
/ 29 сентября 2011

Это логически невозможно. Если у вас есть много объектов B, принадлежащих A, какую B должна выполнять процедура сортировки?

Например, у вас есть сущность A «Родитель», сущность B «Дочерний» и атрибут B «dateOfBirth». Вы не можете отсортировать все родительские объекты в соответствии с самой низкой датой рождения, потому что, если у двух разных родителей по два ребенка, вполне возможно, что у каждого из них есть ребенок, который старше одного другого.

Ясно?

...