嗨,我想按年份过滤结果,我做了一些事情,但是它的返回类型是LazyFilterCollection <>。我如何解决它以获得结果?我认为可以使用NSPredicate完成,但是我不明白如何在谓词中使用日期组件。
这是我的训练模型。
going to load app settings
got appsettings
getting permissions
https://webapi.endpoint/
Angular is running in the development mode. Call enableProdMode() to enable the production mode.
这是我要过滤的表达式。
class Training: Object {
@objc dynamic var id = 0
@objc dynamic var date = NSDate()
var exercises = RealmSwift.List<TrainingExercise>()
convenience init(date: NSDate, exercise: TrainingExercise) {
self.init()
self.exercises.append(exercise)
}
override class func primaryKey() -> String? {
return "id"
}
}
答案 0 :(得分:1)
不幸的是,事情并非如此简单。 Results.filter采用nspredicate或谓词格式字符串。
let trainingsBetweenDates = realm.objects(Trainings.self).filter("date BETWEEN {%@, %@}", startDate, endDate)
您可以使用此处描述的方法自行设定边界日期:How do you create a swift Date object