Krzysztof (Christopher) Wawer@wafcio about.me/kwawer
View Slide
Our API• Roda• ROM (Ruby Object Mapper)• JSON API standard (http://jsonapi.org)
{price: 1000}=>{price: '1000'}/\d+/
dry-validationPiotr SolnicaAndy Hollandhttp://dry-rb.org/gems/dry-validation/
Community• 17 contributors• very active Gitter channelhttps://gitter.im/dry-rb/chat• v0.10.1• used in hanami-validations, reform
Strange and awesomethings
Predicate Logic• and ( & )• or ( | )Dry::Validation.Schema dorequired(:age) { int? & gt?(18) }end
Optional Keys and Values{age: 30}{name: nil,age: 30}
Nested data{name: "John",address: {street: "Main Street"},emails: ["[email protected]"]}
Shared schemaDry::Validation.Schema dorequired(:name).filledrequired(:address).schema(AddressSchema)end
dry-validationhttp://dry-rb.org/gems/dry-validation/
Thanks@wafcio about.me/kwawer