2011-02-23 3 views
0

У меня есть управляемый объект X, имеющий отношение к списку объектов [1: N) Y. (Объекты X и Y хранятся с использованием данных ядра)Правильный способ получить возможно через Cocoa Привязывает последний элемент отношения в Core Data

Я хотел бы найти правильный (и более удобный) способ получить последний вставленный объект Y. Атрибут «name» этого объекта Y должен отображаться на графике, возможно, через Cocoa Bindings.

Я знаю, что все Ys вставляются в NSSet, поэтому нет определенного порядка. Однако каждый Y имеет атрибут «timestamp», поэтому, когда я говорю «последний вставленный объект Y», на самом деле я имею в виду «Y с последней отметкой времени».

Любая помощь будет оценена по достоинству: я искал всю документацию, но не нашел ничего, что могло бы мне помочь.

ответ

2

В КВЦ Программировании Collection Operators раздела Гида, описание для @Max говорит

Оператор @Max сравнивает значение свойства, заданное ключевым путем справа от оператора и возвращает максимальное значение найденный. Максимальное значение определяется с помощью метода сравнения объектов по указанному пути. Объекты сравниваемых свойств должны поддерживать сравнение друг с другом. Если значение правой стороны пути ключа равно нулю, оно игнорируется.

Следующий пример возвращает максимальное значение из значений даты (дата последней сделки) по Сделке объектов в сделках:

NSDate *latestDate = [transactions valueForKeyPath: "@max.date"]; 

В latestDate значение (отформатированный) составляет 15 Июль, 2010.

+0

Прохладный. Но как я могу связать NSView, в котором я хочу показать название y с последней меткой времени? К сожалению, ключевые пути selection.ys. @ Max.timestamp.title ot [email protected] не работают ... – Dev

+0

У временных меток в вашем приложении есть названия? Зачем ты туда поместил? (Другой вопрос: «Почему вы пытаетесь ссылаться на заголовок с помощью ключевого слова timestamp?») – Huperniketes

+0

Мой вопрос в том, что я хотел бы найти последний вставленный объект Y, потому что его «имя» (а не «название», извините) атрибут должен отображаться в пользовательском интерфейсе, возможно, через привязки какао. С помощью ключевого пути, который вы предложили, «selection.ys. @ Max.timestamp», я могу получить * временную метку * последнего вставленного объекта Y. Большой шаг вперед и очень крутой. Но как я могу получить * заголовок * этого объекта? Спасибо за ваше время! – Dev

 Смежные вопросы

  • Нет связанных вопросов^_^