1

我正在使用 winston/google_visualr 创建漂亮的图表来可视化我的 rails 应用程序中的统计数据。
它在我的语言环境系统上运行良好,但如果我将它推送到 heroku,我会得到类似 token_error 的东西。结果是,它只显示 Heroku 页面

我们很抱歉,但有些不对劲。

我的头部application.html.erb看起来像这样

<head>
    <title><%= full_title(yield(:title)) %></title>
    <script src='http://www.google.com/jsapi'></script>
    <%= stylesheet_link_tag    "application", :media => "all" %>
    <%= javascript_include_tag "application" %>
    <%= csrf_meta_tags %>
</head>  

这是heroku日志:

ActionView::Template::Error (Unexpected token name, expected punc (line: 13588, col: 3, pos: 384041)
    at expect (/tmp/execjs20121119-2-qx6eku.js:977:40)
Error
    at js_error (/tmp/execjs20121119-2-qx6eku.js:505:15)
    at new JS_Parse_Error (/tmp/execjs20121119-2-qx6eku.js:497:22)
    at token_error (/tmp/execjs20121119-2-qx6eku.js:961:17)
    at expect_token (/tmp/execjs20121119-2-qx6eku.js:974:17)
    at object_ (/tmp/execjs20121119-2-qx6eku.js:1365:56)
    at /tmp/execjs20121119-2-qx6eku.js:1326:51
Completed 500 Internal Server Error in 4980ms
    at croak (/tmp/execjs20121119-2-qx6eku.js:954:17)
    at maybe_unary (/tmp/execjs20121119-2-qx6eku.js:1425:27)
    at expr_ops (/tmp/execjs20121119-2-qx6eku.js:1452:32)
   (in /app/app/assets/javascripts/application.js)):
    6:    <%= stylesheet_link_tag    "application", :media => "all" %>
    7:    <%= javascript_include_tag "application" %>
    8:    <%= csrf_meta_tags %>
    9:    <%= render 'layouts/shim' %>
    4:    <title><%= full_title(yield(:title)) %></title>
    5:    <script src='http://www.google.com/jsapi'></script>
  app/views/layouts/application.html.erb:7:in `_app_views_layouts_application_html_erb__1437494530852335371_34567960'

看起来外部脚本引用可能是原因。你知道如何实现这个吗?heroku 上 googlevisualr rails 扩展
的作者的演示实现工作正常。我需要考虑 heroku 中的任何配置设置吗?谢谢你的帮助。

4

1 回答 1

1

我尝试了很多次,但我发现了问题所在。如果包含的 JS 之一有语法错误,即缺少分号,则会发生错误。在我的 Gemfile 中,我没有将版本号添加到我的 gem '...'。我在我的开发环境中使用版本 '0.6.21' 中的 gem 'bootstrap-datepicker-rails'。如果您推送到 heroku,您的所有 gem 将再次安装,并使用最新的可用版本。由于版本 0.6.28 是安装在 heroku 上的实际版本。它可能有语法错误,并导致上述问题。所以,它与线路无关

<script src='http://www.google.com/jsapi'></script>

我刚刚将我的 gemfile 中的行更正为以下内容,然后一切正常:

gem 'bootstrap-datepicker-rails', '0.6.21'
于 2012-11-20T07:03:01.743 回答