如何在Rails中通过jQuery调用JSON文件?

时间:2016-09-23 18:49:55

标签: jquery ruby-on-rails json ajax asset-pipeline

我正在使用Mapplic jQuery插件为Rails中的建筑构建一个简单的寻路应用程序。

该脚本需要一个它调用的JSON文件:

$('#floor-5').mapplic({
  source: 'floor-5.json',
  height: 1000,
  minimap: false,
  sidebar: true,
  hovertip: true,
  developer: false,
  maxscale: 3
});

我在app/assets/json/floor-5.json中有JSON文件。

我认为jQuery脚本试图使用AJAX,我知道在Rails中存在问题。

JS和CSS文件都通过资产管道正确调用,但我不确定如何通过资产管道正确访问所需的JSON文件。

JSON文件然后通过AJAX加载它想要使用的图像:

{
    "mapwidth":"1080",
    "mapheight": "1000",
    "levels": [
    {
        "id" : "floor-5",
        "map" : "/assets/images/floor-5.png",
        "minimap" : "/assets/images/floor-5.png"
        }
    ]
}

如何将这些AJAX调用与资产管道进行协调?

1 个答案:

答案 0 :(得分:0)

您可能拥有无效的JSON。如果您的资产都在Rails资产管道中的正确文件夹中,那么Rails使用AJAX查找这些文件应该没有问题。但是,如果您有无效的JSON,它将抛出相同的错误,就好像它根本无法加载文件一样。使用JSON验证程序,看看是否能解决问题:https://jsonformatter.curiousconcept.com/