#django #django-templates #django-admin #tabular #templatetags
#django #django-шаблоны #django-admin #табличный #templatetags
Вопрос:
Я изо всех сил пытаюсь решить следующее:
Я настраиваю встроенный шаблон django tabular, который содержит несколько полей.
У меня есть условие
{% if field.field.name == 'productid' %} ... {% endif %}
Однако есть два поля, которые имеют … применяемое условие, которое является «productid» и «distributionid price productid» — оба содержат слово productid. Однако я хочу, чтобы оно было только у первого. Как я могу сделать это условие более строгим?
Любая помощь будет высоко оценена.
РЕДАКТИРОВАТЬ: html-файл:
{% if field.field.name == 'productid' %}
<input type="text" name="PN" id="PN" placeholder="PN:"/>
{% endif %}
{% if field.field.name != 'productid' %}
<td class="field-{{ field.field.name }}"
data-id="{{ field.field.id }}" data-type="id">
{% if field.is_readonly %}
<p>{{ field.contents }}</p>
{% else %}
{{ field.field.errors.as_ul }}
{{ field.field }}
{% endif %}
Комментарии:
1. Не могли бы вы показать нам свой views.py файл?
2. Там нет никакого views.py связанный с этим, поскольку это сайт администратора (настраиваемая встроенная таблица администратора)
3. Я думаю, что то, как вы зацикливаетесь на поле, имеет значение, можете ли вы поделиться большей частью своего HTML-файла?
4. Edit добавлено, я хочу идентифицировать поле и настроить его, чтобы я мог запускать для него пользовательский ajax-запрос. Я знаю, что это можно было бы сделать более СУХИМ, но сейчас это не проблема, это для меня, чтобы мне было легче читать 🙂
5. это стандартная табличная строка, в которой можно найти только небольшую настраиваемую часть (см. Выше) yourpathtodjangodjangocontribadmintemplatesadminedit_inlinetabular.html Они напечатаны на прилагаемом скриншоте непосредственно перед полем 🙂
Ответ №1:
Ваше условие if находится за пределами поля td. Просто поместите его в поле.тег поля
{% if field.is_readonly or not field.field.is_hidden %}
<td{% if field.field.name %} class="field-{{ field.field.name }}"{% endif %}>
{% if field.is_readonly %}
<p>{{ field.contents }}</p>
{% else %}
{{ field.field.errors.as_ul }}
{{ field.field }}
{% if field.field.name == 'productid' %}
<input type="text" name="PN" id="PN" placeholder="PN:"/>
{% endif %}
{% endif %}
</td>
{% endif %}