[Dbix-class] DBIx::Class, another data validation approach

Rob Kinyon rob.kinyon at gmail.com
Tue Jul 21 16:10:49 GMT 2009


On Tue, Jul 21, 2009 at 11:51, Andy Armstrong<andy at hexten.net> wrote:
> On 21 Jul 2009, at 16:29, Ulrich Kautz wrote:
>>
>> DBIx::Class::DataValidator
>>
>> PRO:
>> + Multiple mergable validators supported for multiple contexts at
>> runtime (create, update, customs.. )
>> + Brings columns and validation together at definition time.
>> + Better DRY support via named validation methods and column classes
>> (inheritable)
>> + Deflate / inflate aware
>>
>> CONTRA:
>> - More complex usage, consists of two modules (ResultSet and Component),
>> more settings (configuration) makes it less lighweight
>> - Bound to Data::FormValidator

First off, I think this is better than DBIC::Validation. It is a
better fit to the ResultSet/Row separation that DBIC is all about.

That said, there's a few things that I'd like to see be done:
1) With one setting, I should be able to turn on validation for all my
columns that have a type set for them. So, if I have a column that is
an integer, that should just turn on for me.
2) I should be able to chain validations. So, something like
"validation => [ 'foo', 'bar' ]". Look at how Moose does this.
3) Different DBMSes have different types. So, maybe producer-specific
validations would be helpful (q.v. #1).

This is also starting to get very very close to custom types. There's
been discussion of this for 0.09. I think getting you involved would
be very helpful.

Rob



More information about the DBIx-Class mailing list