objective-c - 核心数据:NSPredicate,对象由实体对象组成

标签 objective-c ios core-data nspredicate

例如:
NSDateComponents *dueDate实体具有Task *(可转换)属性。并且打算获取所有NSDate *值小于dueDate[NSDate date]值的对象。 NSDateComponents对象由日历单位常量NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit创建。
[NSPredicate predicateWithFormat:@"dueDate < %@", [NSDate date]]类型不匹配。如何在等式之前从NSDate创建dueDate对象?

还是有更好的方法比较NSDateComponents

最佳答案

谓词应如下所示:

[NSPredicate predicateWithFormat:@"%@ < %@", [dueDate date], [NSDate date]]

但是,如果您只想比较谓词之外的日期,则可以像这样比较它们:
if ([[dueDate date] compare:[NSDate date]] == NSOrderedAscending){
         //Then dueDate is earlier than [NSDate date], 
}

您也可以使用NSOrderedSame and NSOrderedDescending

关于objective-c - 核心数据:NSPredicate,对象由实体对象组成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9633572/

相关文章:

objective-c - NSObject 上的类别也适用于类

ios - 我们可以将外部摄像头的视频分享到 iOS 设备吗

ios - Debug模式下和试飞部署后的不同应用显示分辨率

iphone - 针对 SQL 经验丰富的开发人员的 Core Data 与 SQLite

objective-c - 追踪执行executeFetchRequest时导致卡住的 block /死锁

objective-c - 在 objective-c 中将数字转换为单词

ios - 有时在 CLI 上运行 xcode 测试会返回 "manager not ready"

ios - 将 UIScrollView 添加到包含大量对象的现有 View 中......如何轻松地使整个 View 可滚动?

core-data - 在 Swift 中为 Transformable 属性实现 NSValueTransformer

cocoa - 只有在没有关系的情况下才正确处理对象的删除?