Получить вложенные значения из хэша, используя одну строку - PullRequest
0 голосов
/ 31 октября 2018

У меня есть строка, представляющая последовательность ключей во вложенном хэше в следующем формате:

keys = 'key1[key2]'

и вложенный хеш с соответствующими ключами, например:

hash = {key1: {key2: 'value'}}

Есть ли способ получить значение из этого хэша напрямую, как показано ниже?

value = hash[keys]

Или я должен написать свою собственную логику?

Ответы [ 2 ]

0 голосов
/ 31 октября 2018
hash.dig(*keys.delete(']').split('[').map(&:to_sym))
0 голосов
/ 31 октября 2018

Чтобы ответить на ваш конкретный вопрос, Нет , нет способа (насколько мне известно) получить значение из хэша напрямую, передав входную строку.

Вам придется написать собственную логику, чтобы извлечь ключи из строки и затем извлечь значение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...