class JbuilderTemplate
Public Instance Methods
reopen!(keys=[]) { |attributes| ... }
click to toggle source
# File lib/jbuilder_reopen/jbuilder_template.rb, line 2 def reopen!(keys=[], &block) keys = keys.dup if keys.empty? _scope(@attributes) { yield @attributes } else return if _blank? key = keys.shift result = if ::Array === @attributes[key] @attributes[key].map do |element| _scope(element) { reopen!(keys, &block) } end elsif ::Hash === @attributes[key] _scope(@attributes[key]) { reopen!(keys, &block) } end @attributes[key] = result if result.present? @attributes end end