In Groovy, there is a nice syntax for working with null values.
For example, I can do an if statement:
if (obj1?.obj2?.value) { }
In a rails app there is Object#try
Object#try
So you can do
obj1.try(:obj2).try(:value)
or with a block (as said on comments bellow)
obj.try {|obj| obj.value}
UPDATE
In ruby 2.3 there is operator for this:
obj&.value&.foo
Which is the same as obj && obj.value && obj.value.foo
obj && obj.value && obj.value.foo