【发布时间】:2017-04-29 13:09:00
【问题描述】:
我正在尝试使用 JQuery Raty 插件来了解这个星级评分的功能。 我基本上有一个名为 review 的表,它有 5 列 rtg1-5,因为我需要在一个评论中吃 5 个不同的方面。
在新的评论表单中,我添加了这个来测试它是否适用于在第一个表单中保存值
<%= form_for ([@review.fcomp, @review]) do |f| %>
.....lots of other fields
<div class="form-group row">
<%= f.label 'Luggage handling', class: 'col-sm-4 form-control-label' %>
<div class="col-sm-6" id='star-rating'></div>
</div>
并在表单底部添加了这个
<script>
$('#star-rating').raty({
path: '/assets',
scoreName: 'review.rtg1'
});
</script>
我不明白如何在所有这些星级评分脚本中通过并告诉数据库用所选星数更新表格审查中的列 rtg1?
提前感谢您的任何建议
【问题讨论】:
-
您需要通过jquery ajax $.post 方法将数据提交到您的服务器。
-
如果你被卡住了,这里有一个很棒的 rails 和 Raty 演练:rubyplus.com/articles/…
-
谢谢。这正是我问这个问题后开始搜索的原因。猜猜我必须复习一下ajax,看看我是否弄清楚这是怎么做到的。那个链接正是我到目前为止所使用的链接。但它并没有解释 ajax 部分。除非我错过了什么。请问如果我的页面中最终有 5 个不同的评分,Ajax 是否仍然是正确的选择?我只想在按下提交按钮时将数据写入数据库,而不是在按下星星时写入数据库
-
如果您只想在表单提交时更新您的数据库,则不需要 ajax。在这种情况下,让插件仅在视觉上处理突出显示星星,然后将新评级与表单的其余部分一起提交。
-
感谢您的快速回答,@bkunzi01 但我不明白如何将表单的这一部分连接到我的 :rtg1 字段...
标签: jquery ruby-on-rails