Вы можете использовать «сейчас» в модели, но 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), вышеприведенное не будет работатькак и ожидалось.Этот совет применим только при использовании контекстов одного управляемого объекта.