2010-12-12 5 views
3

Hay, j'utilise MPTT pour créer des données arborescentes à partir d'un modèle qui contient des conversations, et je veux qu'elles soient ordonnées par un champ 'votes'.django-mptt ne pas lier correctement les données

Le modèle ressemble à ceci pour l'instant, très basique. Comme vous pouvez le voir, nous avons un champ de message, et un parent FK qui est lié au modèle Thread, et un vote.

Dans mon point de vue ce que j'ai

threads = Thread.tree.all() 
    data = { 
     'threads':threads 
    } 
    return render_to_response("show.html",data) 

puis dans mon modèle

{% load mptt_tags %} 

<ul class="root"> 
     {% recursetree d %} 
      <li> 
       {{ node.title }} 
       {% if not node.is_leaf_node %} 
        <ul class="children"> 
         {{ children }} 
        </ul> 
       {% endif %} 
      </li> 
     {% endrecursetree %} 
</ul> 

Cependant, la liste est une une émis liste de tous les fils. Aucun d'entre eux sont liés ensemble.

Des idées?

+0

Est-ce votre code actuhal? Votre vue ne contient pas quelque chose appelé 'd' dans votre contexte ... –

Répondre

3
{% load mptt_tags %} 
<ul class="root"> 
    {% recursetree nodes %}    
     <li> 
      {{ node.message }} 
      {% if not node.is_leaf_node %} 
       <ul class="children"> 
        {{ children }} 
       </ul> 
      {% endif %} 
     </li> 
    {% endrecursetree %} 
</ul> 

Dans les vues que j'ai:

threads = Thread.tree.all() 
data = { 
    'nodes':threads 
} 
return render_to_response("show.html",data) 

Dans la page html je vois un arbre de commande nœuds par ordre alphabétique et avec indentation.

Questions connexes