我正在使用RVM并多次安装rails 3.1.0但是一旦我开始使用它,我会一遍又一遍地得到同样的错误。
从全新安装的rails 3.1.0开始,我执行以下操作:
rails new fishapp
cd fishapp
bundle install
rails g scaffold Fish name:string
bundle exec rake db:migrate
但每次去http://localhost:3000/fish我都会得到:
Showing /Users/me/code/rails31/fishapp/app/views/layouts/application.html.erb where line #6 raised:
uninitialized constant JSON::ParserError
(in /Users/me/code/rails31/fishapp/app/assets/javascripts/fish.js.coffee)
Extracted source (around line #6):
3: <head>
4: <title>Fishapp</title>
5: <%= stylesheet_link_tag "application" %>
6: <%= javascript_include_tag "application" %>
7: <%= csrf_meta_tags %>
8: </head>
9: <body>
我肯定已经破坏了试图安装导轨的东西或其他东西,因为我不知道为什么它会失败的全新安装。有什么想法吗?
答案 0 :(得分:0)
您可以尝试执行其中一些操作以查看是否有帮助,
gem coffee script
。multi_json
。答案 1 :(得分:0)
最初,我只是简单地注释了第6行(我只能继续工作)。
<%#= javascript_include_tag "application" %>
最终我需要javascript,所以我不得不回到这个问题。我把上面的一行记录下来,并在其下方硬编码了这一行:
<script src="/assets/application.js" type="text/javascript"></script>
页面加载正常,所以我查看了页面的来源,并查看了
http://0.0.0.0:3000/assets/application.js
...只是发现了类似的错误:
throw Error("NameError: uninitialized constant JSON::ParserError
(in /Users/me/Dev/fishapp/app/assets/javascripts/products.js.coffee)")
所以我决定加载一个rails控制台,看看我是否可以加载JSON gem,但是iconv出错:
ruby-1.9.2-p290 :001 > require 'json'
LoadError: no such file to load -- iconv
同时加载rails gem:
ruby-1.9.2-p290 :004 > require 'rails'
=> false
所以我四处寻找并发现了这个:
http://beginrescueend.com/packages/iconv/
按照这些说明操作,您的问题将得到解决!为了记录,这些说明是:
rvm pkg install iconv
rvm remove 1.9.2
rvm install 1.9.2 --with-iconv-dir=$rvm_path/usr
我将离开我采取的步骤,以防其他人搜索Google的类似错误。