2 Stimmen

Einschließlich Fremdschlüssel zählen in django mptt vollständige Baumliste?

Ich spucke meinen Kategorienbaum so aus:

<div id="categories-tree">
{% load mptt_tags %}
{% full_tree_for_model bugs.Category as cats cumalative count bugs.Bug.categories %}
{% for node, structure in cats|tree_info %}
{% if structure.new_level %}<ul><li>{% else %}</li><li>{% endif %}
    <a href="stackoverflow.com/categories/{{node.slug}}">{{ node }}</a>
    {% for level in structure.closed_levels %}</li></ul>{% endfor %}
{% endfor %}
</div>

Ich möchte jedoch auch eine <span class="count">13</span> für meine inneren Kategorien (beginnend mit der 3. Ebene vielleicht?) die Anzahl der Wanzen, die mit jeder Kategorie verbunden sind, da meine Wanzen mit mehreren Kategorien verbunden sein können.

Ich denke, ich brauche etwas wie dieses Snippet innerhalb meiner verschachtelten for-Schleife, aber ich bin nicht ganz sicher, wie es zu tun:

   {% drilldown_tree_for_node [node] as [varname] count [foreign_key] in [count_attr] %}

Hier sind meine Modelle als Referenz:

class Bug( models.Model ):
    name = models.CharField( max_length=100 )
    slug = models.SlugField(unique=True)
    summary = models.TextField()
    date_added = models.DateTimeField()
    poster = models.ForeignKey(User)
    categories = models.ManyToManyField('Category')

class Category ( models.Model ):
    name = models.CharField( max_length=100 )
    parent = models.ForeignKey('self', null=True, blank=True, related_name='children')
    slug = models.SlugField(unique=True)

mptt.register(Category)

Der aktuelle Stand ist also:

<ul>
    <li><a href="#">CSS</a>
        <ul>
            <li><a href="#">Position</a>
                <ul>
                    <li><a href="#">Absolute</a></li>
                    <li><a href="#">Absolute Fixed</a></li>
                </ul>
            </li>
        </ul>
    </li>
</ul>

Und ideal:

<ul>
    <li><a href="#">CSS</a>
        <ul>
            <li><a href="#">Position</a>
                <ul>
                    <li><a href="#">Absolute</a> <span>13</span></li>
                    <li><a href="#">Absolute Fixed</a> <span>10</span></li>
                </ul>
            </li>
        </ul>
    </li>
</ul>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X