O Ruby on Rails exibe meia estrela para uma classificação decimal, por exemplo 4.5
Consigo visualizar 5 asteriscos para uma classificação de 5 para um produto e 4 asteriscos para uma classificação de 4 etc. Mas o que eu gostaria de fazer é substituir os asteriscos por uma imagem de uma estrela que tenho em meus ativos / images / directory e, se a classificação for 4.5, exiba meia estrela. Existe alguma forma de fazer isso? Abaixo está o meu código atual em application_helper.rb e a visualização em index.html.erb.
application_helper.rb:
module ApplicationHelper
def render_stars(value)
output = ''
if (1..5).include?(value.to_i)
value.to_i.times { output += '*'}
end
output
end
end
index.html.erb:
<div id="star-rating">
<% if not product.no_of_stars.blank? %>
<div id="star-rating">
<% if product.no_of_stars.blank? %>
<%= link_to 'Please add a Review',{ controller: 'reviews', action: 'new', id: product.id } %>
<% else %>
Star rating: <%= render_stars(product.no_of_stars) %>
<% end %>
</div>