[SOLVED] Ruby check if nil and set different value

Issue

This Content is from Stack Overflow. Question asked by Robert

How can I check if the something is nil and if its nil then use a different function to set value.

Integer($evm.root.attributes["dialog_cloud_network"]) can be nil in some cases and so I want to use a different function query_catalogitem(:cloud_network) to set value.

Example:

cloud_network_id =  Integer($evm.root.attributes["dialog_cloud_network"]) || query_catalogitem(:cloud_network). 

The above doesn’t work because cloud_network_id ends with value nil instead of getting the value from query_catalogitem(:cloud_network). How can I resolve this?



Solution

I would do

cloud_network_id = $evm.root.attributes["dialog_cloud_network"]&.to_i || 
                   query_catalogitem(:cloud_network)


This Question was asked in StackOverflow by Robert and Answered by spickermann It is licensed under the terms of CC BY-SA 2.5. - CC BY-SA 3.0. - CC BY-SA 4.0.

people found this article helpful. What about you?