Live from our servers, it’s This Week in Rails!
As always we’re your inside scoop of interesting commits, pull requests and more from Rails.
This is Kasper, and I’m ready to serve you this scoop. I tapped keys on the board in front of me to make words appear. It’s quite the tapestry.
Let’s get to it!
33 contributors made this week happen. Pull Requests were merged, new friendships were made… I think I even heard someone say they saw a cat online. That’s a rare sight, and part of what made this week special. Thanks everyone!
As a follow up to last week’s has_secure_token
, both the migration and model generators can create token
attributes.
rails g migration add_auth_token_to_users auth_token:token
. rails g model user auth_token:token
.
The model generator automatically adds has_secure_token :auth_token
to your new model file.
method_source
added to the default GemfileOn Rails 5 when you generate a new app, you’ll find ‘method_source’ in your Gemfile. This gem extends the Method
class with source
and comment
methods to aid your debugging. There’s a good usage example in this comment.
Previously validates_acceptance_of
would only accept ‘1’ as a valid attribute value. Now you can assign true
to an attribute and the validation will pass.
In Rails 5.1 your time columns will adhere to the time zone of your Rails application. To make the upgrade path smoother, the config.active_record.time_zone_aware_types
option has been added. See the deprecation warning here for help.
A feature you might not have heard about is validation contexts, which allow you to specify a context a callback should only be run for. Like this: before_validation callback, on: :create
. The link shows a few tests being for this on before/after_validation
. Here is a more advanced example.
That’s all for This week in Rails. As always, there are more changes than we have room to cover here, but feel free to check them out yourself!
P.S. If you enjoyed this newsletter, why not share it with your friends? :) If you wish to be part of this project please don’t hesitate to contact Godfrey – there’re a lot of ways you could help make this newsletter more awesome!