ActionController :: RoutingError: constante non initialisée MicropostsController
Mise à jour: Cela était dû à un mal orthographié nom de fichier
correct:
~/sample_app/app/controllers/microposts_controller.rb
incorrect:
~/sample_app/app/controllers/microposts_contoller.rb
C'est ma première contribution ici, des commentaires sur l'amélioration de la ce ou de l'avenir offres est appréciée 🙂
Ruby on Rails Tutoriel: Apprendre le Développement Web avec Rails 4
Tout en travaillant avec le chapitre 10.3je suis coincé. En fin de compte, un mal orthographié nom de fichier m'a fait la chasse aux fantômes pour quelques jours.
$ rspec spec/requests/authentication_pages_spec.rb
No DRb server is running. Running in local process instead ...
...FF................
Failures:
1) Authentication authorization for non-signed-in users in the Microposts controller submitting to the create action
Failure/Error: before { post microposts_path }
ActionController::RoutingError:
uninitialized constant MicropostsController
# ./spec/requests/authentication_pages_spec.rb:93:in `block (6 levels) in '
2) Authentication authorization for non-signed-in users in the Microposts controller submitting to the destroy action
Failure/Error: before { delete micropost_path(FactoryGirl.create(:micropost)) }
ActionController::RoutingError:
uninitialized constant MicropostsController
# ./spec/requests/authentication_pages_spec.rb:98:in `block (6 levels) in '
Finished in 0.92253 seconds
21 examples, 2 failures
Failed examples:
rspec ./spec/requests/authentication_pages_spec.rb:94 # Authentication authorization for non-signed-in users in the Microposts controller submitting to the create action
rspec ./spec/requests/authentication_pages_spec.rb:99 # Authentication authorization for non-signed-in users in the Microposts controller submitting to the destroy action
source d'informationauteur 8legged
Vous devez vous connecter pour publier un commentaire.
Cela était dû à un mal orthographié nom du fichier ~/sample_app/app/controllers/microposts_controller.rb (a microposts_contoller.rb)
Juste pour de l'aide si quelqu'un se retrouve avec un problème similaire:
J'ai mal orthographié le contrôleur, si vous tapez sans les s dans les produits il a eu tort:
Mal:
Droite:
Cela peut aussi arriver si vous avez un imbriquée route de la cartographie d'un ensemble de répertoire:
Started POST "/brokers/properties/5/images/upload" for ...
ActionController::RoutingError (uninitialized constant Brokers::ImagesController):
Vous Devez placer votre
images_controller.rb
fichier avec la structure suivante:Avis dans la structure de répertoire
images_controller.rb
est descendant direct de courtiers.Afin de laisser Rails trouver votre classe de ne pas créer un sous-répertoire
properties
à l'intérieur debrokers
la cartographie de la structure de routes, il doit être le descendant direct de courtiersDans
routes.rb
j'ai tapéresource
au lieu deresources
dans mon parcours: j'ai eu "/"au lieu de "#" pour tous les "get", afin de changer l'état de "#"
get 'tous' => 'vitrine#all_items'
obtenir 'catégorique' => 'vitrine#items_by_category'
obtenir de la "marque" => 'vitrine#items_by_brand'
qui fixe toutes mes erreurs.
J'ai eu tort, inclus ci-dessous dans mon
application_controller.rb
Correct:
include ActionController::MimeResponds
Incorrect:
include ActionController::MimeResponse