rails 生成模型:错误
Posted
技术标签:
【中文标题】rails 生成模型:错误【英文标题】:rails generate model : Error 【发布时间】:2012-01-12 14:42:31 【问题描述】:我是 ruby on rails 的新手。我终于在 ubuntu 11 上成功安装了 rails 并使用“rails new myapp”创建了一个应用程序。
但是在使用“bundle exec rails generate model Comment user:string user_comment:text”生成模型时,我收到以下错误:
我不知道可能出了什么问题。
/home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/execjs-1.2.9/lib/execjs/runtimes.rb:47:in `autodetect': 找不到 javascript 运行时.有关可用运行时的列表,请参阅 https://github.com/sstephenson/execjs。 (ExecJS::RuntimeUnavailable) 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/execjs-1.2.9/lib/execjs.rb:5:in `' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/execjs-1.2.9/lib/execjs.rb:4:in `' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/coffee-script-2.2.0/lib/coffee_script.rb:1:in `require' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/coffee-script-2.2.0/lib/coffee_script.rb:1:in `' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/coffee-script-2.2.0/lib/coffee-script.rb:1:in `require' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/coffee-script-2.2.0/lib/coffee-script.rb:1:in `' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/coffee-rails-3.1.1/lib/coffee-rails.rb:1:in `require' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/coffee-rails-3.1.1/lib/coffee-rails.rb:1:in `' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `require' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `block (2 levels) in require' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `each' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `block in require' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:55:in `each' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:55:in `require' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.21/lib/bundler.rb:122:in `require' 来自 /home/pratuat/Documents/rails/railsdemo/config/application.rb:7:in `' 来自/home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.1.3/lib/rails/commands.rb:21:in `require' 来自 /home/pratuat/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.1.3/lib/rails/commands.rb:21:in `' 来自脚本/rails:6:in `require' 来自脚本/rails:6:in `'
【问题讨论】:
Rails 3.1 error - Could not find a JavaScript runtime? 的可能重复项 【参考方案1】:https://github.com/sstephenson/execjs
您需要从该运行时列表中进行选择。我发现的最简单的是 therubyracer。将此添加到您的 Gemfile,然后执行 bundle install
。
gem "therubyracer"
之后你的模型生成器应该可以工作了。
【讨论】:
我还注意到您需要在 ubuntu 上安装 node.js 或 gem 'execjs'。 如果您安装了 node.js,您不需要为新应用程序执行任何这些操作,因为它会被 rails 拾取为您的 javascript 运行时。以上是关于rails 生成模型:错误的主要内容,如果未能解决你的问题,请参考以下文章