ruby check if hash has method before calling it
# Use .try(:key) to conditionally access hash keys or methods
attr = my_hash.try(:key1)
# You can chain together multiple try()'s
attr = my_hash.try(:key1).try(:key2)
# If you want to access a value in a hash value you can use ternary operators
attr = my_hash.try(:key1) ? my_hash.key1["key2"] : nil