Пример #1
0
def list():
    nodes = Menu.all()
    d = {}
    for node in nodes:
        d[node.path] = node
    keys = d.keys()
    sort_nicely( keys )
    for key in keys:
        print key + ' ' + d[key].name
Пример #2
0
def debug_list(test='undef'):
    nodes = {}
    keys = []
    for node in Menu.all():
        nodes[node.path] = node
        nodes[node.get_key()] = node
        keys.append(node.path)

    sort_nicely(keys)
    for key in keys:
        logging.info(u'[%s] %-10s %5s (%-12s | %-20s)' % (test, key, nodes[key].name,
                     u', '.join([nodes[n].name for n in nodes[key].siblings]),
                     u' > '.join([nodes[n].name for n in nodes[key].ancestors])))
Пример #3
0
 def get_key_to_path(cls):
     # build layout
     _map = {}
     _list = {}
     _result = [('Layout:None', '---')]
     for l in cls.all():
         if l.path == '0':
             continue
         _map[l.get_key()] = l
         _list[l.path] = l
     keys = _list.keys()
     sort_nicely(keys)
     for k in keys:
         _result.append((unicode(_list[k]),
                         '/'.join(map(lambda key: _map[key].name,
                                      _list[k].ancestors[1:])
                                  +[_list[k].name])))
     return _result