【问题标题】:Ratyrate stars not loading in production (heroku)Ratyrate 星未在生产中加载(heroku)
【发布时间】:2015-07-29 06:08:29
【问题描述】:

所以我添加了

<%= javascript_include_tag 'ratyrate.js', "data-turbolinks-track" => false %>

到我的观点的主体。在此之前,星星只会在直接访问 url 或刷新页面时加载。

现在我在 Heroku 上部署我的应用时遇到了完全相同的问题(通过链接访问页面时未加载星号)!

我希望这是足够的信息(很高兴提供更多信息)并且有人曾经遇到过这个问题/有任何想法!谢谢!

已解决 - 查看答案

【问题讨论】:

    标签: jquery ruby-on-rails ruby-on-rails-4 heroku raty


    【解决方案1】:

    所以问题是我忘了运行rake assets:precompile。问题中提到的开发解决方案应该可以工作。

    解决方案

    &lt;%= javascript_include_tag 'ratyrate.js', "data-turbolinks-track" =&gt; false %&gt; 添加到您视图中的头部(似乎运行得更快)或身体标签。

    还将Rails.application.config.assets.precompile += %w( ratyrate.js ) 添加到config/initializers/assets.rb

    然后确保你运行 rake assets:precompile 以避免看起来像我一样傻!

    希望这对某人有帮助:)

    【讨论】:

      【解决方案2】:

      我的解决方法:

      jquery.raty.js

      jquery.raty.js重命名为jquery.raty.js.erb,并将图片选项替换为asset_path,例如:

      cancelOff : 'cancel-off.png'

      会变成

      cancelOff    : '<%= asset_path('cancel-off.png') %>'
      

      raty_helper.rb

      我已将 rating_for 方法从 raty 助手移动到我的一个助手文件中,无论如何我不得不重写一些东西,比如不允许用户评价自己没有开箱即用。

      我在这个文件中所做的更改:

      star_path    = options[:star_path]    || ''
      star_on      = options[:star_on]      || image_path('star-on.png')
      star_off     = options[:star_off]     || image_path('star-off.png')
      star_half    = options[:star_half]    || image_path('star-half.png')
      cancel_on    = options[:cancel_on]    || image_path('cancel-on.png')
      cancel_off   = options[:cancel_off]   || image_path('cancel-off.png')
      

      基本上我删除了每个图像名称之前的/,例如:

      star_on      = options[:star_on]      || image_path('/star-on.png')
      

      现在我可以推送到heroku,它可以按预期工作,而无需在我的本地机器上运行资产预编译并将其全部推送到heroku。

      【讨论】:

        【解决方案3】:

        发生这种情况是因为图像位置未引用资产管道。我必须创建一个新的帮助文件来覆盖 rating_for 方法以从资产管道中提取图像。

        1. config/initializers 中创建一个新的帮助文件 (raty_helper.rb)
        2. 将“模块 RatyHelper”添加到新文件的第 1 行
        3. https://github.com/wazery/ratyrate/blob/master/lib/ratyrate/helpers.rb 复制第 2 行到第 144 行到您的新助手中。

        【讨论】:

          猜你喜欢
          • 2016-12-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-02-10
          • 1970-01-01
          • 2013-09-13
          • 1970-01-01
          相关资源
          最近更新 更多