Сравните две даты в тлеющих углях
Я хочу, чтобы валидация даты окончания была максимальной или равной дате вступления в силу, если дата окончания существует
effectiveDate: validator('presence', {
presence: true,
message: 'Please enter a valid value'
}),
endDate: validator('presence', {
value(model, attribute) {
// Validate a value that is not the current attribute
var effectiveDate = new Date(this.get('model').get('effectiveDate'));
var endDate = new Date(this.get('model').get('endDate'));
presence: effectiveDate > endDate;
},
message: 'Please enter a date value'
})
Дата окончания не обязательна
2 ответа
Решение
Просто сделано с
endDate: validator('date', {
dependentKeys: ['effectiveDate'],
after : function () {
return this.get('model').get('effectiveDate');
}
}),
Если вы используете момент.js для форматирования даты и т. Д., Вы можете сравнить две даты с ".diff", как
var now = moment();
// new date if "your date" is formatted
moment(new Date(this.get('your_date'))).diff(now,'days')
// result is difference in days from given date to now