我是ROR的新手。我已经安装了mySql,Ruby,Rubygems和Rails以及MacPorts。我有一个名为demo的项目,我正在尝试生成模型名称Movie for。我还创建了一个名为Movies的数据库。
当我尝试从终端(Mac Lion)生成模型时,我收到以下错误。
rails generate model Movie /Library/Ruby/Gems/1.8/gems/bundler-1.2.3/lib/bundler/rubygems_integration.rb:187:in `stub_source_index170': no such file to load -- rubygems/source_index (LoadError) from /Library/Ruby/Gems/1.8/gems/bundler-1.2.3/lib/bundler/rubygems_integration.rb:353:in `stub_rubygems' from /Library/Ruby/Gems/1.8/gems/bundler-1.2.3/lib/bundler/rubygems_integration.rb:250:in `replace_entrypoints' from /Library/Ruby/Gems/1.8/gems/bundler-1.2.3/lib/bundler/runtime.rb:14:in `setup' from /Library/Ruby/Gems/1.8/gems/bundler-1.2.3/lib/bundler.rb:116:in `setup' from /Library/Ruby/Gems/1.8/gems/bundler-1.2.3/lib/bundler/setup.rb:7 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:60:in `gem_original_require' from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:60:in `require' from /Users/josephcarlson/demo/config/boot.rb:6 from script/rails:5:in `require' from script/rails:5
这是我的宝石列表
*本地宝石*
actionmailer(3.2.11,3.2.10) actionpack(3.2.11,3.2.10) activemodel(3.2.11,3.2.10) activerecord(3.2.11,3.2.10) activeresource(3.2.11,3.2.10) activesupport(3.2.11,3.2.10) akami(1.2.0) arel(3.0.2) 建设者(3.0.4) 捆绑器(1.2.3) 咖啡轨(3.2.2) 咖啡脚本(2.2.0) coffee-script-source(1.4.0) erubis(2.7.0) execjs(1.4.0) gyoku(1.0.0) 徒步旅行(1.2.1) httparty(0.9.0) httpi(2.0.0) i18n(0.6.1) 旅程(1.0.4) jquery-rails(2.1.4) json(1.7.6) 邮件(2.4.4) 哑剧型(1.19) multi_json(1.5.0) multi_xml(0.5.1) mysql2(0.3.11) nokogiri(1.5.6) 紫菜(2.0.0) 多语言(0.3.3) 机架(1.4.4,1.4.3) 机架缓存(1.2) rack-ssl(1.3.2) 机架测试(0.6.2) 铁轨(3.2.11,3.2.10) 铁路(3.2.11,3.2.10) 耙子(10.0.3) rdoc(3.12) sass(3.2.5) sass-rails(3.2.5) savon(2.0.2) 链轮(2.2.2) sqlite3(1.3.7) 索尔(0.16.0) 倾斜(1.3.3) 树梢(1.4.12) tzinfo(0.3.35) uglifier(1.3.0) 芥末(3.0.0)
这是Gem Env
RubyGems环境: - RUBYGEMS版本:1.8.24 - RUBY VERSION:1.8.7(2012-02-08 patchlevel 358)[universal-darwin11.0] - 安装目录:/ Library/Ruby/Gems/1.8 - RUBY EXECUTABLE:/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby - EXECUTABLE目录:/ usr / bin - RUBYGEMS PLATFORMS: - 红宝石 - universal-darwin-11 - 创业板路径: - /Library/Ruby/Gems/1.8 - /Users/josephcarlson/.gem/ruby/1.8 - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8 - 创业板配置: - :update_sources =>真正 - :verbose =>真正 - :benchmark =>假 - :backtrace =>假 - :bulk_threshold => 1000 - 远程来源: - http://rubygems.org/
问题源于database.yml文件中的无效行。见下文。
发展: 适配器:mysql2 编码:utf = 8 数据库:测试 游泳池:5 主持人:localhost 用户名:xxxx passwoord:xxxxxx socket /tmp/mysql.sock
因此您可以看到编码行和套接字行不正确。我通过删除“utf = 8”中的=并在套接字行中添加“:”来纠正这些行。一旦修复,我就能够生成模型,控制器和/或脚手架。