neděle 18. března 2012

Některé constraint v Grails

Dnes jsem při definování doménové třídy pro novou aplikaci narazil na problém, kdy jsem nevěděl, jaký je rozdíl mezi constrainty size a range. Tušil jsem, že jeden nejspíš bude pro String a druhý pro čísla. Po chvíli prozkoumání zdrojáku v Grails jsem narazil na toto:

třída RangeConstraint metoda processValidate():
....
if (from instanceof Number && propertyValue instanceof Number) {
....

třída SizeConstraint metoda processValidate():
....
if (propertyValue.getClass().isArray()) {...
else if (propertyValue instanceof Collection) {...
else if (propertyValue instanceof String) {...
....
Tedy Size je pro String a Range pro čísla. Také jsem pak narazil na tuto část v dokumentaci: http://grails.org/doc/latest/guide/single.html#gormConstraints.

Žádné komentáře:

Okomentovat