とーますメモ

Ruby on Rails / Goなどの学習メモ

【Rails】Rails5で文字列の"true"や"false"をBooleanにキャストする方法

Rails5では以下のように書ける。

ActiveRecord::Type::Boolean.new.cast(0) # false
ActiveRecord::Type::Boolean.new.cast(1) # true
ActiveRecord::Type::Boolean.new.cast('0') # false
ActiveRecord::Type::Boolean.new.cast('1') # true
ActiveRecord::Type::Boolean.new.cast(false) # false
ActiveRecord::Type::Boolean.new.cast(true) # true
ActiveRecord::Type::Boolean.new.cast('false') # false
ActiveRecord::Type::Boolean.new.cast('true') # true
ActiveRecord::Type::Boolean.new.cast(nil) # nil

[参考]
check_boxによって送られてくるパラメータを真偽値として扱う方法 - Qiita