2017-02-08 2 views
1

Я использую Django-виджет ухищрения и не смог выяснить как добавить переменные поля в качестве заполнителя, как следующее:Используйте ярлык поля как заполнитель с Джанго-виджет-твиков

<div class="col-sm-10"> 
{{ field|append_attr:"class:form-control"|append_attr:"placeholder:field.label" }} 
{% if field.help_text %} 
    <p class="help-block"><small>{{ field.help_text }}</small></p> 
{% endif %} 
</div> 

field.label выше не оценивает и помещает строку "field.label" в качестве заполнителя на странице.

Некоторые сообщения SO предлагают зарегистрировать пользовательский тег/фильтр, который кажется сложным для чего-то такого простого.

ответ

2

Теперь я использую render_field для визуализации поля вместо использования фильтров шаблонов и, похоже, работает.

<div class="col-sm-10"> 
    {% render_field field class="form-control" placeholder=field.label %} 
    {% if field.help_text %} 
    <p class="help-block"><small>{{ field.help_text }}</small></p> 
    {% endif %} 
</div> 

кажется форма переменные не могут быть использованы в фильтрах шаблонов и могут быть использованы только с render_field (хотя Джанго-виджет твики documentation не говорит, что явно).

Смежные вопросы