Ruby on rails 4 在Rails 4中加载SlickGrid资源的问题

Ruby on rails 4 在Rails 4中加载SlickGrid资源的问题,ruby-on-rails-4,asset-pipeline,slickgrid,Ruby On Rails 4,Asset Pipeline,Slickgrid,我试图在Rails 4应用程序中使用,但在正确加载一些SlickGrid资产时遇到了问题 最初,我尝试使用gem,它为您将SlickGrid内容加载到资产管道中。然而,现在发现gem与rails4不兼容 所以我去下载了SlickGrid源代码,并开始在我的应用程序中手动放置文件。下面是我执行的设置 我的文件设置 将所有JavaScript文件放入vendor/assets/javascripts 将所有CSS文件放入供应商/资产/样式表中 将所有图像文件(.gif、.png等)放置在资源/图像

我试图在Rails 4应用程序中使用,但在正确加载一些SlickGrid资产时遇到了问题

最初,我尝试使用gem,它为您将SlickGrid内容加载到资产管道中。然而,现在发现gem与rails4不兼容

所以我去下载了SlickGrid源代码,并开始在我的应用程序中手动放置文件。下面是我执行的设置

我的文件设置

  • 将所有JavaScript文件放入vendor/assets/javascripts

  • 将所有CSS文件放入供应商/资产/样式表中

  • 将所有图像文件(.gif、.png等)放置在资源/图像中


资产设置

在application.js文件中,我添加了一行:

//= require_tree ../../../vendor/assets/javascripts
*= require_tree ../../../vendor/assets/stylesheets
config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)
在我的application.css文件中,我添加了一行::

//= require_tree ../../../vendor/assets/javascripts
*= require_tree ../../../vendor/assets/stylesheets
config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)
在application.rb文件中,我添加了一行::

//= require_tree ../../../vendor/assets/javascripts
*= require_tree ../../../vendor/assets/stylesheets
config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)

构建平滑网格

在我的视图文件中,我有一个元素::

#my-slick-grid

我的JavaScript文件

$(document).ready(function(){
var rows = [
                {
                    field_1: "value1",
                    field_2: "value2"
                }, {
                    field_1: "value3",
                    field_2: "value4"
                }
            ];

var columns = [
                {
                    name: "Address",
                    field: "address",
                    id: "address",  
                    sortable: true
                }, 
                {
                    name: "Rating, in %",
                    field: "rating", 
                    id: "rating_percent",
                    resizable: false
                }
            ];

var options = [];


var slickgrid = new Slick.Grid($("#my-slick-grid"), rows, columns, options);
});

结果

当视图加载时,我得到了表的“大部分”,但它并不完整。


错误

此外,当我查看Chrome控制台时,我看到以下两个错误:

GET http://localhost:3000/assets/images/header-columns-bg.gif 404 (Not Found)
GET http://localhost:3000/assets/images/ui-bg_glass_75_e6e6e6_1x400.png 404 (Not Found)

因此,显然Rails在加载或知道从何处获取图像文件方面存在问题。有人知道我做错了什么吗?我怀疑可能我没有将SlickGrid文件放置在适当的位置。也许有人能看出我做错了什么并纠正我

谢谢你的时间

所以我想出来了

我必须把所有的SlickGrid图像文件放到我应用程序的公共目录中

然后我不得不在每个SlickGrid.css文件中添加.scss扩展名

然后,在所有的SlickGrid.css.scss文件中,我必须替换所有

url('/assets/images/blahblah.gif')

现在,当我运行应用程序时,表已完全绘制,不再有404错误