2

ネストされた {% regroup %} タグでいっぱいの Django テンプレートを持っていますが、それが非常に遅い理由の 1 つだと感じています。さらに、このように維持するのは非常に複雑です。より速く、より持続可能にするためのアドバイスや設計パターンはありますか? ロジックをモデルに移動したり、テンプレート タグを作成したりするなど、あらゆる提案を受け入れます...

これは、構造のみを含むコードのスニペットであり、それがどのように見えるかを味わうことができます...

{% extends "base.tex" %}

{% block content %}
    {% for courseoutline in courseoutline_list %}
        ...

        {% regroup courseoutline.coursemembership_set_by_teaching_unit by teaching_unit as course_list %} 

        {% for course in course_list %}
            {% regroup course.list|dictsort:"course.title" by course.title as course_sublist %}

            {% for course in course_sublist %}
                    {% with course.list|semester:1 as cc %}
                        ...
                        {% for c in cc %}
                        ...
                        {% endfor %}
                    {% endwith %}

                    {% with course.list|semester:2 as cc %}
                        {% for c in cc %}
                        {% endfor %}
                    {% endwith %}
            {% endfor %}
        {% endfor %}

        {% regroup courseoutline.coursemembership_set_by_semester by semester as semester_list %} 
        {% for semester in semester_list %}

            {% regroup semester.list by teaching_unit as ue_list %} 

            {% for ue in ue_list %}
                {% for course in ue.list|dictsort:"code" %}
                {% endfor %}
            {% endfor %}

        {% endfor %}
    {% endfor %}
{% endblock %}

ありがとう!

4

0 に答える 0