2011-12-20 190 views
1

我正在关注Ruby on Rails教程:通过示例学习Rails,作者Michael Hartl。路由错误没有路由匹配“/ users”Ruby on Rails教程:通过示例学习Rails,Michael Hartl

http://ruby.railstutorial.org/chapters/a-demo-app#sec:a_micropost_microtour

问题开始: 所以,当我输入:

$ rails generate scaffold Micropost content:string user_id:integer 

的命令,通过精细去了。

然而,当我输入:$ bundle exec rake db:migrate

我得到以下错误:

K-MacBook-Pro:demo_app ka$ bundle exec rake db:migrate 
WARNING: 'require 'rake/rdoctask'' is deprecated. Please use 'require 
'rdoc/task' (in RDoc 2.4.2+)' instead. 
    at /Users/ka/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/rdoctask.rb 
WARNING: Global access to Rake DSL methods is deprecated. Please include 
    ... Rake::DSL into classes and modules which use the Rake DSL methods. 
WARNING: DSL method DemoApp::Application#task called at 
/Users/ka/.rvm/gems/[email protected]/gems/railties-3.0.1/lib/rails/application.rb:214:in 
`initialize_tasks' 
== CreateUsers: migrating ==================================================== 
-- create_table(:users) 
    -> 0.0023s 
== CreateUsers: migrated (0.0024s) =========================================== 

信息:

Rails -v: 3.0.1 
gem list: 
abstract (1.0.0 ruby) 
actionmailer (3.0.1 ruby) 
actionpack (3.0.1 ruby) 
activemodel (3.0.1 ruby) 
activerecord (3.0.1 ruby) 
activeresource (3.0.1 ruby) 
activesupport (3.0.1 ruby) 
addressable (2.2.6) 
arel (1.0.1 ruby) 
builder (2.1.2 ruby) 
bundler (1.0.21) 
erubis (2.6.6 ruby) 
heroku (2.17.0) 
i18n (0.4.2 ruby) 
json (1.6.3) 
launchy (2.0.5) 
mail (2.2.19 ruby) 
mime-types (1.17.2 ruby) 
polyglot (0.3.3 ruby) 
rack (1.2.4 ruby) 
rack-mount (0.6.14 ruby) 
rack-test (0.5.7 ruby) 
rails (3.0.1 ruby) 
railties (3.0.1 ruby) 
rake (0.9.2.2, 0.8.7 ruby) 
rdoc (3.12) 
rest-client (1.6.7) 
rubyzip (0.9.5) 
sqlite3 (1.3.3) 
sqlite3-ruby (1.3.3, 1.2.5 ruby) 
term-ansicolor (1.0.7) 
thor (0.14.6 ruby) 
treetop (1.4.10 ruby) 
tzinfo (0.3.31 ruby) 

我曾尝试:

我复制“宝石“耙”,“0.8.7”“我的Gemfile 我跑bundle update rake 然后我试过:$ bundle exec rake db:migrate (在/ Users/ka/rails_projects/demo_app) 之后它将我带回$提示符。

当我打开http://localhost:3000/users 我得到以下错误:

Routing Error No route matches "/users" No route matches "/Users"

+2

我在运行'rake db:migrate'时看不到任何错误,只有警告。 – 2011-12-20 05:32:11

回答

2

的问题是,你没有在配置/ routes.rb中的任何路径设置为用户。

如果用户是一种资源,你可以添加以下文件:

# config/routes.rb 
resources :users 

这将允许您使用/用户,users_path,user_path(@user)等

你得到的rdoc警告就是这样,警告。他们很可能是由于需要更新的宝石(在他们的最后)。尽可能让宝石保持最新状态,并最终看到警告消失(很有可能)。

+0

谢谢@Andrewpthorp – user1107173 2012-01-20 00:34:34

相关问题