Salut Guillaume,
J'ai essayé de faire un validates_class_of hors Rails (donc ne mimant
pas leur mécanisme d'écriture de condition avant l'appel à la méthode
qui la teste), et j'ai ça :
def validates_class_of (obj, validation_params)
# validates that obj is an object of validation_params[:class]
# for example : validates_class_of :price, :class => Float
if eval(obj.id2name + ".class") != validation_params[:class]
Je trouve ça... assez laid pour être franc.
def validates_class(obj, klass, validation_params)
if obj.is_a?(klass)
...
c'est pas plus simple ?
errors.add(:obj, validation_params[:message] || "should be a
#{validation_params[:class]} object")
return false
else
return true
end
end
-- Jean-François.
--
À la renverse.
_______________________________________________
Railsfrance mailing list
Railsfrance@rubyonrails.fr
http://lists.rubyonrails.fr/mailman/listinfo/railsfrance