Отображение звезды рейтинга в Django с помощью fontawesome v5.13
Я пишу сайт на django и в этом сайте я периодически прошу пользователей оценить платформу. Я храню оценки с помощью models.FloatField()
в моей базе данных.
Теперь моя проблема в том, как отобразить звезды.
Если у меня есть что-то вроде 3.5 в качестве значения рейтинга, то на моей html-странице у меня должно быть 3 полные звезды, четвертая звезда должна быть половиной, а пятая (также последняя) должна быть пустой звездой
Как я могу добиться этого с помощью fontawesome v5.13
Иметь файл шаблона для каждого значения рейтинга:
##### stars_0.5.html
<i class="fa fa-star-half-o"=></i> # half star
<i class="far fa-star"></i> #hollow star
<i class="far fa-star"></i> #hollow star
<i class="far fa-star"></i> #hollow star
<i class="far fa-star"></i> #hollow star
##### stars_1.0.html
<i class="fas fa-star"=></i> # full star
<i class="far fa-star"></i> #hollow star
<i class="far fa-star"></i> #hollow star
<i class="far fa-star"></i> #hollow star
<i class="far fa-star"></i> #hollow star
##### stars_1.5.html
<i class="fas fa-star"=></i> # full star
<i class="fa fa-star-half-o"=></i> # half star
<i class="far fa-star"></i> #hollow star
<i class="far fa-star"></i> #hollow star
<i class="far fa-star"></i> #hollow star
etc..
Тогда, по вашему мнению:
...
stars_template = f'stars_{str(rating)}.html'
context = {"stars_template": stars_template, ...}
А в вашем шаблоне:
... other html
{% include stars_template %}
... other html