我正试图在RealmJS中查询生日的日期字段。
我想找到所有今天过生日的人。
问题是我不能忽视这一年。有办法做到这一点吗?
我的代码:
const today = new Date();
const morning = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 0,0,0,0);
const evening = new Date(today.getFullYear(), today.getMonth(), today.getDate()+1, 0,0,0,0);
const studentBirthdaysToday = realm.objects('Student').filtered('birthday >= $0 && birthday < $1', morning, evening);
尽管今天有学生过生日,但它并没有出现,因为它在寻找2020年。
我怎么能忽略年份?
这就是student.生日在数据库中的格式,它是一个领域日期:2000-08-25T10:00:00.000Z
使用date
属性无法轻松解决此问题。我建议您创建一个生日对象模式:
const Birthday = {
name: "Birthday",
properties: {
year: "int",
month: "int",
day: "int"
}
};
然后在Student
:中使用
const Student = {
name: "Student",
properties: {
// ...
birthday: "Birthday"
}
};
现在可以在birthday.month
和birthday.day
上筛选Student
。