Вы сделали неправильные настройки.
Подробнее см. В документации к плагину и демонстрации.
цитата krajee:
Логика выделения звездочек зависит от звезд, мин, макс и
пошаговые конфигурации. Процент каждой звезды, которая будет выделена для
каждый шаг будет оцениваться с использованием следующего выражения:
STAR_HIGHLIGHT_PERCENT = (max - min) * step * 100 / stars
Например:
Если min = 0, max = 5, step = 0.5 и stars = 5, то
STAR_HIGHLIGHT_PERCENT будет оценивать до 50% каждой звезды для каждой
шаг.
Если min = 1, max = 5, step = 0.5 и stars = 5, то
STAR_HIGHLIGHT_PERCENT будет оценивать до 40% каждой звезды для каждой
шаг. * +1021 *
Так, например, 2 выше, звезды не будут выделены полностью
по желанию. Поэтому важно, чтобы вы установили конфигурацию
звезды, мин, макс и шаг правильно.
Для получения подробной информации см. документацию к плагину и демонстрационные версии.
для Вас:
'stars' => 4,
'step' => 3.75,
'min' => 0,
'max' => 15,
или
echo StarRating::widget(['name' => 'rating',
'pluginOptions' => [
'stars' => 5,
'step' => 3.75,
'min' => 0,
'max' => 18.75,
'starCaptions' => new JsExpression("function(val){return val-3.75 + ' hearts';}")
]
]);
- 1
Если значения вашего поля целые числа от 1 до 5
Чтобы отобразить пол-звезды и полные звезды, вы должны использовать круглые числа.
После ввода чисел в следующую формулу:
(max - min) * step * 100 / stars
равно: 50% or 100%
И для отображения только полной звезды, равной: 100%
- 2
Однако лучше, чтобы rate
и step
были равны.
Например, если step
равно 2
, лучше, чем max
равно 10 (5 звездочек)
- 3
Все это зависит от значения вашего поля :
например:
значения: .5, 1, 1,5, ... 5
По умолчанию (звезды = 5, макс = 5, шаг = 0,5)
значения: 1, 2, 3, ... 5
(Звезды = 5, макс = 5, шаг = 1)
значения: 1, 2, 3, ... 12
(звезды = 6, максимум = 12, шаг = 1) => Половина = одна точка
значения: 2, 4, 6, ... 12
(звезды = 6, максимум = 12, шаг = 1) => одна звезда = 2 балла