Ответы пользователя по тегу Ruby on Rails
  • Как в руби осуществить поиск по хэшу?

    d4mk0f
    @d4mk0f
    Старость - не страшно, а PHP - не смертельно.
    Вот тут, вероятно, есть пример того, что вы хотите в итоге получить.

    Стандартных базовых функций для решения данной задачи в Ruby - нет.

    Рекурсивная функция, которая бегает по всему хэшу и ищет значения по заданному ключу. MonkeyPatch!!!
    class Hash
      def find_all_values_for(key)
        result = []
        result << self[key]
        self.values.each do |hash_value|
          values = [hash_value] unless hash_value.is_a? Array
          values.each do |value|
            result += value.find_all_values_for(key) if value.is_a? Hash
          end
        end
        result.compact
      end
    end

    Ответ написан