星を表示するためのカスタムフォームタイプを作成します(基本的に5つのラジオボタン)。レンダリング用のカスタムブロックを作成します。
{% block star_rating_widget %}
{% spaceless %}
<div {{ block('widget_container_attributes') }}>
{% for child in form %}
{{ form_widget(child) }}
{% endfor %}
</div>
{% endspaceless %}
{% endblock %}
このブロックは、デフォルトのradio_widgetブロックを使用して5つのラジオボタンを正常にレンダリングします。
{% block radio_widget %}
{% spaceless %}
<input type="radio" {{ block('widget_attributes') }}{% if value is defined %} value="{{ value }}"{% endif %}{% if checked %} checked="checked"{% endif %} />
{% endspaceless %}
{% endblock radio_widget %}
いくつかのクラスと属性を追加するためにradio_widgetブロックをオーバーライドする方法を知る必要がありますが、star_rating_block内でレンダリングする場合のみです。