星级评分系统。数据库中的保存率
Rating System with Stars. Save rate in DB
我创建了一种博客,例如,我有文章。
在每篇文章中,我都实现了一个以图形方式工作的星级评分插件。
这是视图的屏幕截图:
为了让它工作,我使用了 jRate 插件,并在页面中添加了这个 JavaScript 块:
{% block javascripts %}
<script type="text/javascript">
$(function () {
var that = this;
var toolitup = $("#jRate").jRate({
minSelected: 0,
maxSelected: 5,
readOnly: false,
shape: 'STAR',
width: 30,
height: 30,
precision: 1,
onChange: function(rating) {
$('#demo-onchange-value').text("Il tuo voto: "+rating);
},
});
});
</script>
{% endblock %}
“+rating”变量当然是费率。所以我在想我可以使用该变量将它保存在数据库中我的文章 table 的字段中。
所以我在文章实体中添加了一个新字段:
/**
* @var integer
*
* @ORM\Column(name="rate", type="integer",nullable=true)
*/
private $rate;
如何保存该字段中的评分?
对于星级评分,我一直使用 https://github.com/blackknight467/StarRatingBundle。如果你想使用自己的实现,至少你可以看看他们是怎么做的。 Basically the rating field is represented by a hidden input, and when the stars selected changed , also change the value of the input.在提交表单时,该字段通常保存为整数。希望对你有帮助。
我创建了一种博客,例如,我有文章。 在每篇文章中,我都实现了一个以图形方式工作的星级评分插件。
这是视图的屏幕截图:
为了让它工作,我使用了 jRate 插件,并在页面中添加了这个 JavaScript 块:
{% block javascripts %}
<script type="text/javascript">
$(function () {
var that = this;
var toolitup = $("#jRate").jRate({
minSelected: 0,
maxSelected: 5,
readOnly: false,
shape: 'STAR',
width: 30,
height: 30,
precision: 1,
onChange: function(rating) {
$('#demo-onchange-value').text("Il tuo voto: "+rating);
},
});
});
</script>
{% endblock %}
“+rating”变量当然是费率。所以我在想我可以使用该变量将它保存在数据库中我的文章 table 的字段中。 所以我在文章实体中添加了一个新字段:
/**
* @var integer
*
* @ORM\Column(name="rate", type="integer",nullable=true)
*/
private $rate;
如何保存该字段中的评分?
对于星级评分,我一直使用 https://github.com/blackknight467/StarRatingBundle。如果你想使用自己的实现,至少你可以看看他们是怎么做的。 Basically the rating field is represented by a hidden input, and when the stars selected changed , also change the value of the input.在提交表单时,该字段通常保存为整数。希望对你有帮助。