首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django-mptt未正确链接数据

django-mptt未正确链接数据
EN

Stack Overflow用户
提问于 2010-12-13 02:39:14
回答 1查看 464关注 0票数 2

嘿,我正在使用MPTT从一个包含会话的模型中创建一些树状数据,并且我希望它们按“投票”字段排序。

这个模型目前看起来是这样的,非常基础。

代码语言:javascript
复制
class Thread(MPTTModel):
    message = models.CharField(max_length=100)
    parent = models.ForeignKey('self', null=True, blank=True, related_name='children')
    votes = models.IntegerField()

    class MPTTMeta:
        order_insertion_by=['votes']

正如你所看到的,我们有一个消息字段,一个链接到线程模型的父FK,以及一个投票。

在我看来,我有这样的想法

代码语言:javascript
复制
threads = Thread.tree.all()
    data = {
        'threads':threads
    }
    return render_to_response("show.html",data )

然后在我的模板中

代码语言:javascript
复制
{% 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>

然而,输出的列表是所有线程的列表。它们没有一个是联系在一起的。

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-16 23:39:19

代码语言:javascript
复制
{% 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>

在视图中,我有:

代码语言:javascript
复制
threads = Thread.tree.all()  
data = {  
    'nodes':threads  
}
return render_to_response("show.html",data )

在html页面中,我看到一个节点树,按字母顺序和缩进顺序排列。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4423290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档