我有一个Rails 3.2.14应用程序,我正在使用chartkick
和groupdate
gem来尝试生成一些基本图表。
加载视图时,会出现以下错误:Error Loading Chart: No adapter found
以下是我的视图代码:
index.html.erb
<%= line_chart Call.group_by_week(:created_at).count %>
这是我的应用程序布局,包括chartkick和yield chart_jsapplication.html.erb(布局)
<%= javascript_include_tag "application", "chartkick" %>
<%= yield :charts_js %>
有人能告诉我为什么会出现这个错误以及如何修复它吗?我真的很想开始使用Chartkick来生成一些简单的图表。
可能您错过了加载Google图表或Highcharts(适配器)。
尝试在<%= javascript_include_tag "application", "chartkick" %>
之前添加此行<%= javascript_include_tag "//www.google.com/jsapi" %>
。还要查看gem主页中的安装部分(向下滚动:)。
要查看:谷歌图表在您的布局或视图中,添加:
<%= javascript_include_tag "https://www.gstatic.com/charts/loader.js" %>
链接:https://chartkick.com/#google-图表
我第一次尝试ChartKick时也遇到了类似的问题。我收到的错误消息是加载图表时出错:找不到图表库-请确保在图表前包含一个
以下是我的修复方法。
我只是将下面的代码行添加到assets>javascript文件夹中的application.js文件中。
//= require Chart.bundle
//= require chartkick
保存并刷新,这应该可以修复它。
这都是
我希望这能有所帮助
另一个错误原因可能是您在javascript_include_tag中使用的协议。
例如,您将得到错误Error Loading Chart: No adapter found
例如,如果您的网站使用https协议:https://www.example.com
以及代码中javascript_include_tag中的http:<%= javascript_include_tag "http://www.google.com/jsapi", "chartkick" %>
如果以上问题不能解决,那么还有一种可能性是mixed content
问题。
您可以通过打开JS控制台来检查这一点。
混合内容:页面位于'https://site.io/'是通过HTTPS加载的,但请求了一个不安全的脚本'http://www.google.com/jsapi"。这请求已被阻止;必须通过HTTPS提供内容。
解决方案:
只需更改此
http://www.google.com/jsapi
对此(将s
添加到http
)
https://www.google.com/jsapi