Ruby - Uzyskaj dostęp do wielowymiarowego skrótu i ​​unikaj dostępu do obiektu nil [duplikat]

Możliwy duplikat:
Ruby: Nils w instrukcji IF
Czy istnieje czysty sposób na uniknięcie wywołania metody na zero w zagnieżdżonym skrócie params?

Powiedzmy, że próbuję uzyskać dostęp do skrótu w następujący sposób:

<code>my_hash['key1']['key2']['key3']
</code>

Jest to miłe, jeśli klucz 1, klucz 2 i klucz 3 istnieją w hashach, ale co, jeśli na przykład klucz1 nie istnieje?

Wtedy dostanęNoMethodError: undefined method [] for nil:NilClass. I nikt tego nie lubi.

Do tej pory zajmuję się tym, co robię warunkowo:

if my_hash['key1'] && my_hash['key1']['key2'] ...

Czy jest to właściwe, czy istnieje jakikolwiek inny najbardziej rubestyczny sposób?

questionAnswers(3)

yourAnswerToTheQuestion