Raty jQuery插件不工作Rails 5

Posted

技术标签:

【中文标题】Raty jQuery插件不工作Rails 5【英文标题】:Raty jQuery plugin not working Rails 5 【发布时间】:2017-01-13 17:51:30 【问题描述】:

我是 RoR 的新手,在我的应用上显示 Raty 插件时遇到问题。 另外,我注意到自从我添加了 Raty 后,另一个 Js 函数已经停止工作,所以我认为它们之间存在冲突?

已添加 Raty 对应文件:jquery.raty.js // jquery.raty.css // 图像

所有帮助将不胜感激,谢谢!

/models/product.rb

def average_rating
comments.average(:rating).to_f
end

/assets/javascript/application.js

$(document).on('turbolinks:load', function () 

  $(".alert").delay(1500).fadeOut("slow");

);

$(document).on('turbolinks:load', function () 

  $(".notice").delay(1500).fadeOut("slow");

);

/assets/javascript/site.js

$(document).on('turbolinks:load', function()
    $('.rating').raty(  path: '/assets', scoreName: 'comment[rating]' );
    $('.rated').raty( path: '/assets',
      readOnly: true,
      score: function() 
        return $(this).attr('data-score');
      
    );
);

/views/products/_new_comment.erb

<% if signed_in? %>
  <h2>Add a review:</h2>
  <%= form_for([@product, @product.comments.build]) do |f| %>
    <p>
      <%= f.label :body, "Comments" %><br>
      <%= f.text_area :body %>
    </p>
    <p>
      <%= f.label :rating, "Rating" %><br>
      <div class="rating"></div>
    </p>  
    <br>
    <p>
      <%= f.submit "Submit" %>
    </p>
  <% end %>
<% end %>

/views/products/_cmets.erb

<div class="product-reviews">
    <% @comments.each do |comment| %>
        <div class="row">
            <hr>
            <p><%= comment.user.first_name %> <small><em><%= "#time_ago_in_words(comment.created_at) ago" %></em></small></p>
            <p><div class="rated" data-score="<%= comment.rating %>"></div></p>
            <p><%= comment.body %></p>
        </div>
    <% end %>
</div>

/views/products/show.html.erb

<div class="col-md-12">
    <%= render partial:'new_comment' %>
</div>

<div class="col-md-12">
    <%= render partial:'comments' %> 
</div>

【问题讨论】:

【参考方案1】:

你没有在你的问题中复制你的config/environments/production.rb,但它可能看起来像这样: config.assets.compile = false

如果将其更改为 true,它应该可以工作: config.assets.compile = true

【讨论】:

以上是关于Raty jQuery插件不工作Rails 5的主要内容,如果未能解决你的问题,请参考以下文章

jquery 比率插件不适用于 Rails

Rails 5 Star Rating jQuery Plugin Raty 没有通过评级值

jQuery Raty星级评分插件使用方法

javascript jQuery - Raty插件

用这个插件jquery.raty.js————用于星星评价(这个案例用于后台传数据给我,前台显示星星个数)

是否有可能知道星星是否亮起? (jQuery Raty 插件)