Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
dry-validations
Search
Krzysztof Wawer
September 23, 2016
Programming
0
190
dry-validations
Krzysztof Wawer
September 23, 2016
Tweet
Share
More Decks by Krzysztof Wawer
See All by Krzysztof Wawer
The Good Architecture
wafcio
0
650
GIT - Good Practices
wafcio
0
95
Slim Ruby on Rails: Controllers & Middlewares
wafcio
1
200
Dry System
wafcio
0
120
Validations in Ruby
wafcio
0
200
Generating a CSV file with ROM
wafcio
0
350
Trailblazer bez trailblazera
wafcio
0
250
ActiveRecord, DataMapper czy Agregacja encji
wafcio
0
200
Jak (nie) używać Service Object
wafcio
0
230
Other Decks in Programming
See All in Programming
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
310
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
120
Java 21/25 Virtual Threads 소개
debop
0
130
Docコメントで始める簡単ガードレール
keisukeikeda
1
130
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
170
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
130
Windows on Ryzen and I
seosoft
0
330
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
600
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.4k
AI活用のコスパを最大化する方法
ochtum
0
250
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
190
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
300
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Designing for Performance
lara
611
70k
New Earth Scene 8
popppiees
1
1.7k
Evolving SEO for Evolving Search Engines
ryanjones
0
160
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Paper Plane
katiecoart
PRO
0
48k
Docker and Python
trallard
47
3.8k
How GitHub (no longer) Works
holman
316
150k
Transcript
Krzysztof (Christopher) Wawer @wafcio about.me/kwawer
Our API • Roda • ROM (Ruby Object Mapper) •
JSON API standard (http://jsonapi.org)
{ price: 1000 } => { price: '1000' } /\d+/
dry-validation Piotr Solnica Andy Holland http://dry-rb.org/gems/dry-validation/
Community • 17 contributors • very active Gitter channel https://gitter.im/dry-rb/chat
• v0.10.1 • used in hanami-validations, reform
Strange and awesome things
Predicate Logic • and ( & ) • or (
| ) Dry::Validation.Schema do required(: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 schema Dry::Validation.Schema do required(:name).filled required(:address).schema(AddressSchema) end
dry-validation http://dry-rb.org/gems/dry-validation/
Thanks @wafcio about.me/kwawer