Rails 3.1: Ruby idiom to prevent .each from throwing exception if nil?
Simply do the following:
Array(phonelist).each do |phone|
#deal with your phone
end
Array(my_variable) will ensure to return an array if my_variable is nil.
It doesn't create a new Array if my_variable is already an array, so it is safe and light to use it wherever you want !
You can use the try method to call .each on a nil so it does not throw an error if the object is nil or empty.
phonelist = nil
phonelist.try(:each){|i| puts i}