Ios 域筛选器firstDate早于newDate
我试图从领域中获取对象,其中Ios 域筛选器firstDate早于newDate,ios,swift,realm,nsdate,Ios,Swift,Realm,Nsdate,我试图从领域中获取对象,其中newDate比firstDate晚。因此,如果从firstDate开始的日期是2017年10月5日,它将在该日期之后获取对象,例如2017年10月6日,但不是2017年10月4日 以下是我存储日期的方式: class User: Object { @objc dynamic var firstDate = Date() @objc dynamic var newDate = Date() } 以下是我保存对象的方式: let date = Date
newDate
比firstDate
晚。因此,如果从firstDate
开始的日期是2017年10月5日,它将在该日期之后获取对象,例如2017年10月6日,但不是2017年10月4日
以下是我存储日期的方式:
class User: Object {
@objc dynamic var firstDate = Date()
@objc dynamic var newDate = Date()
}
以下是我保存对象的方式:
let date = Date()
let realm = try! Realm()
let myUser = User()
myUser.firstDate = self.date
var userData: Results<User>?
if (homeIndexPathRow == 0) {
let getData = realm.objects(User.self).filter("firstDate > newDate")
userData = getData
print("userData", userData!)
}
这就是我试图检索对象的方式:
let date = Date()
let realm = try! Realm()
let myUser = User()
myUser.firstDate = self.date
var userData: Results<User>?
if (homeIndexPathRow == 0) {
let getData = realm.objects(User.self).filter("firstDate > newDate")
userData = getData
print("userData", userData!)
}
var用户数据:结果?
if(homeIndexPathRow==0){
让getData=realm.objects(User.self).filter(“firstDate>newDate”)
userData=getData
打印(“userData”,userData!)
}
尝试检索对象时,应用程序崩溃。。过滤器格式有问题吗?试试这个:
var yourNSDate = NSDate()
let predicate = NSPredicate(format: "firstDate < %@", yourNSDate)
let dataResults = realm.objects(User.self).filter(predicate)
userData = dataResults
var yourNSDate=NSDate()
let predicate=NSPredicate(格式:“firstDate<%@”,yourNSDate)
让dataResults=realm.objects(User.self).filter(谓词)
userData=dataResults
如果(homeIndexPathRow==0),则将其替换为下面的代码{…不要对可以是
nil
的值强制展开。你确定数据确实包含一些筛选器应该返回的条目吗?@DávidPásztor它应该包含条目。我在领域浏览器中打开了领域文件,得到了这样的结果:正如你所看到的,它应该很好(?)左边是firstDate
,右边是newDate
。没有firstDate>newDate
的条目,所以getData
是nil
,正如预期的那样……你说你的应用程序崩溃了……是否愿意分享任何关于崩溃的信息?。@bdash错误消息只是:libc++abi.dylib:以un终止捕获到NSException类型的异常
。