On Tue, 11 Oct 2005 10:04:57 -0300
JJ (Arnaldo Janz Júnior) <[EMAIL PROTECTED]> wrote:

> Olá, pessoALL!
> 
> Estamos montando uma estrutura de diretórios (p/ tentar ilustrar, a idéia é
> algo como o navtree ou o sitemap) via consulta no portal_catalog. Tudo
> corria bem exceto o fato de que estamos obtendo TODA a estrutura no mesmo
> nível, ou seja, ñ conseguimos identificar quem é filho de quem.
> Pelo que parece, não existe índice que guarde isso (quem é filho de quem) no
> portal_catalog, não é? E, se realmente não, alguém sabe como poderíamos
> fazer?
> Tentamos o produto ExtendedPathIndex p/ usarmos depth com um índice path do
> tipo ExtendedPathIndex - salvo engano, como no Plone 2.1 - mas não deu
> certo, ainda não conseguimos o resultado esperado (e, de fato, não me parece
> a solução, já que só reduz a quantidade de níveis a descer).
> Estamos usando Plone 2.0.5 + Zope 2.7.7.
> Alguém pode ajudar? Alguém já precisou construir uma estrutura assim?

Serve achar "quem é o pai de quem" ao invés de "quem é filho de quem" ;o)

Experimente algo assim:

::

result = context.cancun.portal.portal_catalog(portal_type="AnuncioBalada")
for i in result:
    obj = i.getObject()
    caminho_genealogico = []
    while obj:
        try:
            caminho_genealogico.append(obj.getId())
            obj = obj.aq_parent
        except:
            break

    # pretty-print
    caminho_genealogico.reverse()
    for level,Id in enumerate(caminho_genealogico):
        print "\t"*level, Id

    break # descomente para testar só 1 iteração
return printed


Abração,
Senra


Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/zope-pt/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 




Responder a