Je dois ajouter un validateur personnalisé pour comparer deux dates: la date de début et la date de fin. J'ai créé validateur personnaliséValidateur personnalisé dans client_side_validations
class MilestoneDatesValidator < ActiveModel::EachValidator
def validate_each(record, attribute, value)
if record.start_date > record.end_date
record.errors.add(attribute, :end_date_less, options.merge(:value => value))
end
end
end
et moi avons créé ClientSideValidations validateur personnalisé. Je ne savais pas comment je peux obtenir une autre dans les valeurs des attributs, mais j'ai essayé de le faire de telle manière:
ClientSideValidations.validators.local['milestone_dates'] = function(element, options) {
start_date = new Date($('#milestone_start_date').val());
end_date = new Date($('#milestone_end_date').val());
if(end_date < start_date) {
return options.message;
}
}
Mais il ne fonctionne/je n'ai pas erreur seulement après la page rechargeant, mais pas avec validations côté client. J'utilise client_side_validations (3.2.0.beta.3), client_side_validations-formtastic (2.0.0.beta.3), rails (3.2.3)