Sooey

2013-02-06 22:55:21 +0900

ActiveSupportのassert_valid_keysHashのキーをチェックする。

ActiveSupportで提供されているHash#assert_valid_keysを使うと、メソッドの引数として渡されたHashに必要なキーが含まれているかどうかを容易にチェックできる。

{ :name => "Rob", :years => "28" }.assert_valid_keys(:name, :age) # => raises "ArgumentError: Unknown key: years"
{ :name => "Rob", :age => "28" }.assert_valid_keys("name", "age") # => raises "ArgumentError: Unknown key: name"
{ :name => "Rob", :age => "28" }.assert_valid_keys(:name, :age) # => passes, raises nothing

上の例のように、selfとなるHashassert_valid_keysの引数で指定されたキーが含まれていない場合にArgumentErrorが発生します。キーはSymbolStringで区別して判定されるので注意。