繁体   English   中英

django-MPTT向下钻取模板

[英]django-MPTT drilldown template

我在模板中无法深入了解mptt时遇到了一些麻烦。

我有以下模型。

models.py

class Dimension_value(MPTTModel):
    name = models.CharField(max_length = 200, null=True, blank = True, default = '')
    parent = TreeForeignKey("self", on_delete=models.CASCADE, null=True, blank=True, related_name="children")

    class MPTTMeta:
        order_insertion_by = ['name']

def __str__(self):
    return self.name

views.py

def show_dimensions(request):
    return render(request, "accounts/dimension_detail.html", {'dimensions': Dimension_value.objects.all()})

template.py

{% extends 'base.html' %}
{% block head %}
{% endblock %}
{%block body%}
<div class="container-fluid">
   <div class="card">
      <div class="card-body">
         <h2>My dimensions</h2>
         {% load mptt_tags %}
         {% drilldown_tree_for_node dimensions as drilldown cumulative count accounts.Dimension_value.name in game_count %}
   {% for node,structure in drilldown|tree_info %}
       {% if structure.new_level %}<ul><li>{% else %}</li><li>{% endif %}
       {% if node == dimension %}
           <strong>{{ node.name }}</strong>
       {% else %}
           <a href="{{ node.get_absolute_url }}">{{ node.name }}</a>
           {% if node.parent_id == dimension.pk %}({{ node.game_count }}){% endif %}
       {% endif %}
       {% for level in structure.closed_levels %}</li></ul>{% endfor %}
   {% endfor %}
      </div>
   </div>
   <br>
   <br>
   <a class="btn btn-primary" href="{% url 'add_plan' %}" role="button">Add a plan</a>
   <button onclick="goBack()" class = "btn btn-secondary">Go Back</button><br><br><a class="btn btn-primary" href="{% url 'subscribeusertoplan' %}" role="button">Add a user to plan</a>
</div>
{%endblock%}

我已经根据此处找到的文档添加了视图: https : //django-mptt.readthedocs.io/en/latest/templates.html?highlight=examples#examples

但是我得到以下错误。 异常类型:AttributeError异常值:
'TreeQuerySet'对象没有属性'_tree_manager'

希望有人可以向正确的方向推动我。 谢谢!

你可以通过使用一些CSS和jQuery来做到这一点

{% block head %}
{% endblock %}
{%block body%}

<div class="container-fluid">

   <div class="card">
      <div class="card-body">
         <h2>My dimensions</h2>
         {% load mptt_tags %}

     {% recursetree dimensions %}
                <a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapse{{node.level}}" aria-expanded="false" aria-controls="collapsed">

             {{ node.name }}</a>
             {% if not node.is_leaf_node %}

                 <ul class="children">
                   <div id="collapse{{node.level}}" class="children panel-collapse collapse" role="tabpanel" aria-labelledby="headingOne">
                     <div class="panel-body">

                     {{ children }}  </div>
                     </div>
                 </ul>
             {% endif %}

     {% endrecursetree %}

      </div>
   </div>
   <br>
   <a class="btn btn-primary" href="{% url 'add_plan' %}" role="button">Add a plan</a>
   <button onclick="goBack()" class = "btn btn-secondary">Go Back</button><br><br><a class="btn btn-primary" href="{% url 'subscribeusertoplan' %}" role="button">Add a user to plan</a>
</div>



{%endblock%}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM