Основные данные Iphone: Дата Значение по умолчанию как Текущая дата - PullRequest
20 голосов
/ 22 сентября 2010

Я использую данные Core.У меня есть сущность с атрибутом типа Дата.Есть ли способ установить значения по умолчанию в качестве текущей даты?(Например, введите «CURRENTDATE» или что-то в значении атрибута по умолчанию?)

1 Ответ

34 голосов
/ 22 сентября 2010

Вы можете использовать «сейчас» в модели, но Core Data оценивает это во время компиляции, а не во время выполнения.Вы получите дату компиляции, сохраненную в вашей модели по умолчанию, что, вероятно, не то, что вы хотите:

http://iphonedevelopment.blogspot.com/2009/07/core-data-default-dates-in-data-model.html

Самый надежный способ гарантировать значение свойства по умолчанию текущегоdate должна переопределить -awakeFromInsert в подклассе NSManagedObject и назначить там текущую дату.

- (void) awakeFromInsert 
{
   [super awakeFromInsert];
   self.date = [NSDate date];
   // or [self setPrimitiveDate:[NSDate date]]; 
   // to avoid triggering KVO notifications

}

Примечание. Если вы используете вложенные контексты управляемого объекта (или UIManagedDocument), вышеприведенное не будет работатькак и ожидалось.Этот совет применим только при использовании контекстов одного управляемого объекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...