Я использую Django версию 3.0.1, python версию 3.6.9
Я пытаюсь установить URL для отдельных записей в al oop внутри набора форм, но тег url может не вижу мою переменную, хотя она выводится в первую ячейку таблицы, прежде чем я добавлю вторую строку:
{# This displays correctly the integer id #}
<td>{{ form.record_id.value }}</td>
{# This next line doesn't work, though the above TD does display the record_id #}
<td><a href="{% url 'record_detail' form.record_id.value %}">{{ form.name.value }}</a></td>
Ошибка, которую я получаю, заключается в следующем:
Reverse for 'record_detail' with arguments '(None,)' not found. 1 pattern(s) tried: ['myapp\\/record_detail\\/(?P<pk>[0-9]+)\\/$']
Это мой шаблон таблицы кода (обратите внимание, что вторая строка закомментирована, в противном случае я получаю сообщение об ошибке при просмотре страницы):
<table id="formset" class="form">
{% for form in recordFormset.forms %}
<tr class="someclass">
<td>{{ form.record_id.value }}</td>
{# This next line doesn't work, though the above TD does display the record_id #}
{# <td><a href="{% url 'record_detail' form.record_id.value %}">{{ form.name.value }}</a></td> #}
</tr>
{% endfor %}
</table>
Я предполагаю, что это потому, что URL создается до для l oop через формы набора форм, но как тогда я могу создать эти URL, которые мне нужно создать?
(Обратите внимание, что для краткости я пропустил редактируемые поля формы в приведенном фрагменте).