I am using django-widget-tweaks and unable to figure out how to add a field variable as placeholder, like the following:
<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
above does not evaluate and puts the string "field.label"
as the placeholder on the page.
Some SO posts suggest registering a custom tag/filter which seems complicated for something this simple.
I am now using render_field
to render the field instead of using template filters and it seems to work.
<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>
It seems form variables cannot be used within template filters and can only be used with render_field
(though the django-widget-tweaks documentation doesnt say that explicitly).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With