rails 配置好了嗎?
學習書籍:Agile Web Development with Rails (Fourth Edition)
操做系統:untu 12.04
ruby版本:ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]
gem版本:2.0.3
rails 版本:Rails 3.0.5
rake 版本:linux
1 liam@liam-K53TK:/$ gem list rake 2 3 *** LOCAL GEMS *** 4 5 rake (10.1.0, 0.9.6, 0.8.7)
問題:遷移數據庫失敗sql
1 liam@liam-K53TK:~/work/demo$ rake db:migrate 2 rake aborted! 3 ERROR: 'rake/rdoctask' is obsolete and no longer supported. 4 5 Use 'rdoc/task' (available in RDoc 2.4.2+) instead.
上面提示 已經不支持 rake 遷移數據庫數據庫
解決辦法:
改寫gemfile.lock(Gemfile.lock用來記錄Application中的依賴Gem包,並詳細記錄了依賴Gem包的版本)
gemfile 的位置:在你建立應用程序的主目錄vim
1 liam@liam-K53TK:~/work/demo$ ls -p 2 app/ config.ru doc/ Gemfile.lock log/ Rakefile script/ tmp/ 3 config/ db/ Gemfile lib/ public/ README test/ vendor/ 4 liam@liam-K53TK:~/work/demo$ 5 liam@liam-K53TK:~/work/demo$ vim Gemfile.lock 6 #...以上略,直截取後面的信息 7 8 railties (3.0.5) 9 actionpack (= 3.0.5) 10 activesupport (= 3.0.5) 11 rake (>= 0.8.7) 12 thor (~> 0.14.4) 13 rake (10.1.0) 14 sqlite3 (1.3.7) 15 thor (0.14.6) 16 treetop (1.4.14) 17 polyglot 18 polyglot (>= 0.3.1) 19 tzinfo (0.3.37) 20 21 /rake(查找 rake)
/rake(查找 rake)把rake 的版本改成0.8.7,就能夠遷移數據庫了ruby
命令 rake db:migrateapp