【问题标题】:Jinja template groupby sorting issueJinja 模板 groupby 排序问题
【发布时间】:2021-11-25 10:43:08
【问题描述】:

在这个代码块中,我按标题分组。但我想按数组索引顺序对标题进行排序。不按字母顺序。

{% set list = widget.attributes.faq_item %}

{% for title_group in list|groupby('value.main_title') %}
  <h2 class="account-sss__title">{{title_group.grouper}}</h2>

  {% for item in title_group.list %}

    <a href="#" class="account-sss__list--link js-link">
        {{item.value.question}}
    </a>
    <div class="account-sss__content js-account-sss__content">
        {{item.value.answer}}
    </div>

  {% endfor %}

{% endfor %}

【问题讨论】:

  • 可以分享视图吗,一般最好在视图中做这个处理,而不是模板。
  • 我解决了这个问题。我分享。

标签: python html django django-templates jinja2


【解决方案1】:

我解决了这个问题。

{% set list = widget.attributes.faq_item %}
{% set Arr_titles = [] %} 

{% for event in list %} 
  {% if event.value.main_title not in Arr_titles %}
   {% do Arr_titles.append(event.value.main_title) %}
  {% endif %}
{% endfor %}

{% for index in Arr_titles %}
  <h2 class="account-sss__title">{{index}}</h2>
  {% for item in list %} 
    {% if index == item.value.main_title %}
    <a href="#" class="account-sss__list--link js-link">
      {{item.value.question}}
    </a>
    <div class="account-sss__content js-account-sss__content">
      {{item.value.answer}}
    </div>
    {% endif %}
  {% endfor %} 
{% endfor %}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-27
    • 2016-09-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多