если я тестирую свой виджет с помощью следующего кода, виджет не отображается; не виджет html на моей странице; только метка html
если я заменяю {{ form_widget(form, {'attr': {'class': 'form-input form-choice form-checkbox'}}) }} на dump, я получаю дамп, поэтому оператор if работает
Если я удалю if мой виджет отображается так, как будто оператор if нарушает рендеринг?
<div class = "custom-select">
{% if 'checkbox' in (form_widget(form)) %}
{{ form_widget(form, {'attr': {'class': 'form-input form-choice form-checkbox'}}) }}
{% else %}
{{ form_widget(form, {'attr': {'class': 'form-input form-choice'}}) }}
{% endif %}
</div>




Вы пробовали указать элемент формы?
{{ form_widget(form.inputname) }}
Это невозможно сделать, потому что код из вопроса - это просто
theme, поэтому для всехform.vars.block_prefixes[1] == 'choice'