Вы забыли зарегистрировать или загрузить этот тег в Django? - PullRequest
0 голосов
/ 02 июля 2018

В проекте django, над которым я работаю, когда я добавляю эту строку {% set alpha = SafeExec.objects.get(testcase=a_test) %} в мой html, она показывает эту ошибку. Как от этого избавиться?

Это мой шаблон кода:

{% for a_testcases in testcases %}
    <li><i>{{ a_testcases.0.program.name }}</i> <br/>
    {% for a_test in a_testcases %}
        {% set alpha = SafeExec.objects.get(testcase=a_test) %}
            {{ alpha.cpu_time }}
    {% endfor %}
    <input id="id{{ a_test.id }}" type="checkbox" name="testcases_cbx" value="{{ a_test.id }}" checked/>
    <label style="display: inline" for="id{{ a_test.id }}">{{ a_test.name }}</label> <br/>
{% endfor %}

Это скриншот ошибки: Template syntax error. Did you for get to load this tag?

Ответы [ 2 ]

0 голосов
/ 02 июля 2018

Вы не можете сделать любое этого в шаблоне. set не является тегом шаблона; SafeExec не будет существовать в контексте; и вы все равно не можете вызывать методы с аргументами в шаблонах.

Не видя ваших моделей, я не могу точно сказать, что вам нужно делать, но похоже, что у тестового примера есть внешний ключ к SafeExec, поэтому вам просто нужно сделать:

{{ a_test.safeexec.cpu_time }}
0 голосов
/ 02 июля 2018

Используйте тег «with», если вы хотите создать любую переменную в шаблоне django.

проверьте этот ответ

Как установить значение переменной внутри кода шаблона?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...