Как получить значение конкретного поля вручную в наборах полей администратора django
Я переопределяю admin/includes/app-name/fieldset.html
, чтобы изменить поведение некоторых полей с помощью JavaScript.
В оригинальном файле fieldset.html от django есть цикл для отображения полей, но я хочу выбрать значение первого поля для некоторого случая. Как я могу это сделать
# I removed some code to make it simpler to read
{% for line in fieldset %}
{% for field in line %}
{{ field.field }}
{% endfor %}
{% endfor %}
Я пытаюсь
{{ fieldset[0].field }}
Но это дает ошибку:
Could not parse the remainder: '[1].field' from 'fieldset[1].field'
Если я это сделаю
{{ fieldset }}
Это дает
<django.contrib.admin.helpers.Fieldset object at 0x000002873F9B1940>
Как я могу выбрать данные первого поля вместо выполнения цикла. Я не полностью знаком с тегами шаблонов django. Поэтому ваша помощь будет необходима здесь.
Я думаю, что это будет так: {{fieldset.0.0.field}}
Мыслительный процесс:
{% for line in fieldset %}
означает, что fieldset является List
.
{% for field in line %}
означает, что line является списком
Итак, мы видим что-то вроде:
fieldset = [
[fieldObj0, fieldObj1], # Line 0
[fieldObj2, fieldObj3], # Line 1
]
Получение строки 0 (первая строка):
{{fieldset.0}}
= [fieldObj0, fieldObj1]
Получение первого поляObj в строке 0:
{{fieldset.0.0}}
= fieldObj0
Получить атрибут поля первого fieldObj в первой строке
.
{{fieldset.0.0.field}}
= fieldObj0.field
Надеюсь, это правильно