Sha256: 20b777f186a01255d704fed707b75b87a5ef30eb0c38c5af671c89d80701ffb2
Contents?: true
Size: 1.8 KB
Versions: 1
Compression:
Stored size: 1.8 KB
Contents
# -*- coding: utf-8 -*- module RedisUIHelpers def redis RedisUI.redis end def partial(template,locals=nil) locals = (locals.is_a?(Hash)) ? locals : {template.to_sym => locals} template = ('_' + template.to_s).to_sym erb template, {layout: false}, locals end def current_ns @current_ns ||= '' end def get_key(key, redis=self.redis) data = case redis.type(key) when "string" redis[key] when "list" redis.lrange(key, 0, -1) when "set" redis.smembers(key) when 'zset' redis.zrange(key, 0, -1) when 'hash' redis.hgetall(key) else '???' end {:key => key, :type => redis.type(key), :data => data} end def show(val) case val when String val when Array if val.empty? '[]' else str = "<ul><li> · " str << val.map{|v|show(v)}.join('</li><li> · ') str << '</li></ul>' end when Hash str = "<ul><li> · " arr = [] val.map do |k, v| arr << "#{k} => #{show(v)}" end str << arr.join("</li><li> · ") str << '</li></ul>' else val.to_s end end def render_tree(val) str = "<ul>" val.each do |k, v| str << "<li><a href='#'>#{k}</a>#{render_tree(v)}</li>" end str << '</ul>' end def build_namespace_tree(keys) @namespace_tree = {} namespaces = keys.map{|k| k.split(':')[0..-2]}.uniq.sort_by(&:size) namespaces.each do |array| hash = array.reverse.inject({}) do |branch, string| newtrunk = {} newtrunk[string] = branch newtrunk end @namespace_tree.deep_merge!(hash) end end # { # 'top' => { # 'second' => {} # } # } end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
redis-ui-0.4.1 | lib/redis-ui/helpers.rb |