Как продублировать текст n раз в Django шаблонах
Я делаю список отзывов, и мне нужно user_course.rate раз написать заполненную звездочку (★), и остальные до пяти заполнить пустую (☆) Т.е если рейтинг 4, то должно быть так ★★★★☆
Gpt выдал такой вариант:
<div class="review-rating">
{% for i in 1|to:user_course.rate %}
★
{% endfor %}
{% for i in user_course.rate|add:1|to:5 %}
☆
{% endfor %}
</div>
Но он падает с ошибкой Invalid filter: 'to'
. Я в принципе не нашел способа например фиксированное количество раз напечатать символ, не то что уж какой-то переменной. Заранее спасибо за помощь
Ответы (1 шт):
Автор решения: strawdog
→ Ссылка
Можно сделать так, например:
{% for _ in '12345' %}
{% if user_course.rate >= forloop.counter%}
★
{% else %}
☆
{% endif %}
{% endfor %}
Я не рекомендую использовать для кодинга помощь ChatGPT.