如何在Realm swift中过滤为当前日期创建的事件?

cwi*_*msz 7 realm swift swift2

如何在Realm swift中过滤为当前日期创建的事件?我尝试过类似下面的东西,但是错了.

let dtSource = datasource.filter("Create == NSDate()").count
Run Code Online (Sandbox Code Playgroud)

更新:使过滤器将日期创建为字符串.

http://i.stack.imgur.com/8fLX9.png

http://i.stack.imgur.com/HDR2X.png

jps*_*sim 16

以查询形式的查询Create == NSDate()将检查确切的日期相等性,这将与第二个相比较.如果您想检查某个日期是否在给定的时间间隔之间,例如检查它是否在特定日期,无论何时,您都可以进行BETWEEN检查:

let dtSource = datasource.filter("Create BETWEEN %@", [firstDate, secondDate]).count
Run Code Online (Sandbox Code Playgroud)

更新:

以下是获取当天所有日期模型的完整代码示例:

import RealmSwift

class Event: Object {
    dynamic var date = NSDate()
}

let todayStart = Calendar.current.startOfDay(for: Date())
let todayEnd: Date = {
  let components = DateComponents(day: 1, second: -1)
  return Calendar.current.date(byAdding: components, to: todayStart)!
}()
events = realm.objects(Event.self).filter("date BETWEEN %@", [todayStart, todayEnd])
Run Code Online (Sandbox Code Playgroud)