我有一个包含以下日期6/14, 6/15, 6/16, 6/17 and 6/18
我有两个谓词
let today = NSDate()
NSPredicate(format: "checked == %@ AND dateTime >= %@", NSNumber(bool: false), today)
NSPredicate(format: "checked == %@ AND dateTime < %@", NSNumber(bool: false), today)
让我们说今天是6/16
所以根据第一个谓词,fetchRequest应该只选择6/16, 6/17 and 6/18
而对于第二个谓词,fetchRequest应该只选择6/14 and 6/15
。
但问题是第一个谓词选择所有行,第二个返回空白。
的DataModel
转化代码
知道这里出了什么问题。
答案 0 :(得分:2)
在您的模型中,您将filter = new Or(new Like("NumberOf", "%"+tfGlobalSearch.getValue().toString()+"%", false),
new Like ("Type","%"+tfGlobalSearch.getValue().toString()+"%", false),
new Like("Date created", "%"+tfGlobalSearch.getValue().toString()+"%", false)
);
f.addContainerFilter(filter);
属性设置为dateTime
对象,但您将其另存为Date
。
所以你必须这样做:
double
注意,我不会说Swift,所以我不知道这段代码是否会更短,但你明白了。