In Rails 8, adding a `!` to a type automatically makes the column non-nullable.
These small additions are what make Rails great! 💚
🔗 https://t.co/V5SQqFlLFV
NOBODY CODES ANYMORE.
So I built LaunchKit for the agents too!
Rails 8, all the boring stuff already built, full documentation, and an AGENTS.md that helps your coding agent understand the entire codebase.
https://t.co/V5SQqFlLFV
In Rails 8, you can now access your notes directly in the browser by visiting `GET /rails/info/notes`!
Small details like this are why we love @rails! 💚
✨ RUBYCADEMY CARDS ✨
Rails has a `halted_callback_hook` that fires whenever a before_* callback halts. 🤩
Super handy for debugging and logging!
#rubyonrails
Two Rails 8 defaults that don't compose.
rate_limit counts in your cache store. Solid Cache increments under SELECT ... FOR UPDATE, which locks nothing when there's no row yet.
First hit from a new IP, two at once, both write 1. A limit of 10 admits 11.
https://t.co/LC62uRQkfb
Rails 7.1 added a neat little upgrade to rails routes --expanded: Source Locations! 💚
Now you can instantly see exactly where each route is defined in your codebase.
#rubyonrails
Ruby makes it so easy to keep user input within a safe range using `clamp()`! 💚
Perfect for forcing a value between MIN and MAX without extra ifs.
🔗 https://t.co/x8zss0BouE
Ruby makes it so easy to keep user input within a safe range using `clamp()`! 💚
Perfect for forcing a value between MIN and MAX without extra ifs.
🔗 https://t.co/x8zss0BouE
Rails 8 added `except_on:` for validations! 🤩
A clean way to say "always validate, except in this context."
It is simpler than `if:` or `unless:` and perfect for drafts, multi-step forms, or any workflow where some fields can be missing!
🔗 https://t.co/x8zss0BouE
Great question! 💚
Yep, it composes with custom contexts too.
`except_on:` accepts a symbol or an array of contexts, just like `on:`.
So you can do `except_on: [:draft, :some_custom_context]`.
Conceptually, it’s the inverse of `on:`: the validation runs in every context except the ones you explicitly exclude.
That’s what makes it nice for draft workflows.
Hope this helps! 🙏
Rails 8 added `except_on:` for validations! 🤩
A clean way to say "always validate, except in this context."
It is simpler than `if:` or `unless:` and perfect for drafts, multi-step forms, or any workflow where some fields can be missing!
🔗 https://t.co/x8zss0BouE