D:\Program\data\books>rails s
=> Booting WEBrick
=> Rails 4.0.0 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
Exiting
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.0/lib/action_dispatch/routing
/mapper.rb:191:in `normalize_conditions!': You should not use the `match` method
in your router without specifying an HTTP method. (RuntimeError)
If you want to expose your action to both GET and POST, add `via: [:get, :post]`
option.
If you want to expose your action to GET, use `get` in the router:
Instead of: match "controller#action"
Do: get "controller#action"
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.0.0/lib/action_dis
...
どうやら、Rails 4 系から match メソッドがこれまで通りでは動かないように変更されたらしい。対応するには、 get でのマッチングを指定か、via を使っての指定を行わないとダメなようだ。
3 系 match 'hello' => 'booklist#hello' match 'bye' => 'booklist#bye' ↓ 4 系 get 'hello', to: 'booklist#hello' match 'bye' => 'booklist#bye', via: :get習得するに当たり、今のところは、Rails 3 系の情報が多く、手持ちの書籍も 3 系のため、慣れてくるまでは、4 系 との違いを補完しながら学習するのは効率が悪い気がするので、3 系をインストールしようと思った(普通に gem からのインストールでは 4 系が入る)。
まずは、現在入っている 4 系をアンインストールしてから 3 系の最新版をインストールする。
アンインストールの際に、「gem uninstall rails」としても、アンインストールは出来ないようだ。
調べたところ railties を指定すると良いらしい。
rails -v Rails 4.0.0 gem uninstall railties -v '4.0.0' (gem uninstall rails ではダメ)アンインストールが完了した後に、バージョンを指定して 3 系をインストールする。
バージョンは、公式を確認すれば良い。
Rails 本家
http://rubyonrails.org/
gem install rails -v '3.2.14' ... rails -v ← インストール出来ているか確認 Rails 3.2.14
0 件のコメント:
コメントを投稿