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?
CodePudding user response:
I would do
cloud_network_id = $evm.root.attributes["dialog_cloud_network"]&.to_i ||
query_catalogitem(:cloud_network)
CodePudding user response:
You need to pass exception: false
to Integer
In this case Integer
may be nil
(if impossible to convert $evm.root.attributes["dialog_cloud_network"]
to Integer)
Also is better to specify base (10)
cloud_network_id =
Integer($evm.root.attributes["dialog_cloud_network"], 10, exception: false) ||
query_catalogitem(:cloud_network)