カクカクしかじか

技術的なアレコレ

Railsで文字列をBooleanにキャストする方法

やり方

ActiveRecord::Type::Boolean.new.cast(キャストしたい値) を使う!

# 文字列の'true'や'false'の場合
$ ActiveRecord::Type::Boolean.new.cast( 'true')
=> true
ActiveRecord::Type::Boolean.new.cast('false')
=> false

# 整数の場合
$ ActiveRecord::Type::Boolean.new.cast(0)
=> false

真偽値に変換出来ない場合もあるので注意🙅‍♀️

# 空文字列の場合
$ ActiveRecord::Type::Boolean.new.cast("")
=> nil