Ошибка маршрутизации Не найдено ни одного маршрута "/ users" Учебное пособие по Ruby on Rails: изучение Rails на примере, автор Michael Hartl - PullRequest
1 голос
/ 20 декабря 2011

Я изучаю Ruby on Rails Tutorial: Майкл Хартл (Michael Hartl). Изучите Rails на примере.

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/ruby-1.9.2-p290@global/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/ruby-1.9.2-p290@global/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)

Что я пробовал:

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

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

Ошибка маршрутизации Не найдено ни одного маршрута "/ users" Не найдено ни одного маршрута »/ Пользователи»

1 Ответ

2 голосов
/ 20 декабря 2011

Проблема в том, что у вас нет настроек пути в config / rout.rb для пользователей.

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

# config/routes.rb
resources :users

Это позволит вам использовать ваши / users, users_path, user_path (@user) и т. Д.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...