编辑评论时如何让星级评分保留价值?
Posted
技术标签:
【中文标题】编辑评论时如何让星级评分保留价值?【英文标题】:How do I make the star ratings retain the value when I edit a review? 【发布时间】:2016-05-12 10:38:07 【问题描述】:我正在使用 jquery raty 星级评分系统并且它有效。除了当我编辑例如有 4 星的评论时,编辑页面显示 0 星。这应该是 jquery 比率的行为方式吗?
或者有没有一种方法,当我编辑该评论时,编辑页面仍然会保留 4 星但仍然可以编辑?
这是我的编辑页面代码:
<%= simple_form_for([@book, @review]) do |f| %>
<div id="rating-form">
<label>Rating</label>
</div>
<%= f.input :comment %>
<%= f.button :submit %>
<% end %>
<script>
$('#rating-form').raty(
path: '/assets/',
scoreName: 'review[rating]'
);
</script>
【问题讨论】:
首先,你可以这样做:review.surf_school = surf_school review.user = current_user 我应该编辑哪一行? 我没有看到这里的问题。您可以粘贴发布的参数吗?puts params.inspect
我没有那个代码。
只需将 puts params.inspect 放在您的方法 create 的顶部 :)。
【参考方案1】:
您只需添加一个选项。 试试这个:
$('#div-rating').raty(
path: '/assets/',
scoreName: 'review[rating]',
score: @review.rating
);
您可以阅读此处的文档以了解选项列表: https://github.com/wbotelhos/raty#options
【讨论】:
是的,它应该返回评级。如果没有,您必须检查为什么它没有保存在数据库中 但是在我使用比率之前,它保留了评级。 首先,尝试在您的 rails c 中将@review.rating 设置为 3 或 4,并在您尝试编辑时查看其视觉上是否正确。如果您想知道为什么它没有保存,请打印您发送到控制器的帖子参数 JS 怎么接@review
?【参考方案2】:
您需要输入以下分数:。它对我有用。 :)
<script>
$('#rating-form').raty(
path: '/assets/',
scoreName: 'review[rating]',
score: <%= @review.rating %>
);
</script>
【讨论】:
以上是关于编辑评论时如何让星级评分保留价值?的主要内容,如果未能解决你的问题,请参考以下文章
Android 学习笔记—— SeekBar(进度条)/RatingBar(星级评分条)