2010-10-24 16 views
3

Travailler mon chemin à travers Ruby on Rails Tutoriel: Apprenez Rails par l'exemple. Je suis dans la section intitulée Mostly Static Pages.Rails 3 ne peut pas trouver route à la page statique

Je reçois une erreur après avoir créé une page HTML dans le répertoire public appelé public/hello.html et qui doit apparaître comme dans la Figure 3.3. Mon problème est que lorsque j'essaie de créer la page et la faire apparaître à localhost: 3000/hello.html Je ne vois pas la page rendue. Au lieu de cela, je reçois une erreur qui dit "erreur de routage No routes correspond"/hello.html "

Je n'ai pas fait de changements à la gamme, je pensais que Rails était censé être assez intelligent pour trouver" hello.html "parce qu'il est dans le même répertoire que le «/index.html public » page et le nom de la page est « hello.html »?

Pouvez-vous s'il vous plaît expliquer?

Répondre

0

Etes-vous sûr que vous avez saisi correctement cette ? Il semble que vous ayez tapé "localhost: 3000/[espace] hello.html" au lieu de "localhost: 3000/hello.html" .Vérifiez s'il vous plaît.Cochez cette case:

4

Si vous êtes comme moi En alimentant le livre, j'ai laissé le serveur tourner depuis le chapitre précédent, donc il chargeait toujours index.html à partir du répertoire demo_app.

+0

Vous monsieur est un lecteur d'esprit! – mcabrams

0

Déplacez le fichier dans le dossier Public. Cela a fait l'affaire pour moi.

L'indicateur que j'ai utilisé est que Rails sert le dossier Public par défaut. Donc j'ai pensé, si je le mets dans le dossier Public, cela devrait fonctionner. Vous verrez que c'est en ligne avec le fichier d'index, donc je pense que c'est aussi une preuve.

+0

Cette question ne dit-elle pas déjà que c'est dans le dossier Public? – FoolishSeth

0

Vérifiez votre répertoire application à nouveau et assurez-vous que vous enregistrez le fichier dans (mon cas):

C: \ Users \ Nnamdi \ rails_projects \ sample_app \ public \ hello.html

J'ai eu le même problème, mais s'est rendu compte que je ne l'ai pas enregistré dans le bon répertoire ..La solution ci-dessus devrait fonctionner..cheers