2011-12-20 3 views
1

Я следую за Ruby on Rails Tutorial: Изучите Rails по примеру Майкла Хартла.Ошибка маршрутизации Нет совпадений маршрутов «/ users» Ruby on Rails Tutorial: Изучите 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) 

То, что я пытался:

Я скопировал «драгоценный камень "rake", "0.8.7" "в мой Gemfile Я побежал bundle update rake Затем я попробовал: $ bundle exec rake db:migrate (in/Users/ka/rails_projects/demo_app) После этого он возвращает меня в приглашение $.

Когда я открываю http://localhost:3000/users я получаю следующее сообщение об ошибке:

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

+2

Я не вижу никаких ошибок при запуске 'rake db: migrate', только предупреждения. –

ответ

2

Проблема заключается в том, что вы не имеете любые настройки пути в конфигурации/routes.rb для пользователей.

Если пользователь является ресурсом, вы можете добавить следующие строки в файл:

# config/routes.rb 
resources :users 

Это позволит вам использовать/пользователей, users_path, user_path (@user) и т.д.

Предупреждения rdoc, которые вы получаете, - это только предупреждения. Скорее всего, это связано с драгоценным камнем, который нуждается в обновлении (на их конце). Храните ваши драгоценные камни в актуальном состоянии, когда можете, и вы в конце концов увидите, что предупреждение уходит (скорее всего).

+0

Спасибо @Andrewpthorp – user1107173

Смежные вопросы