0

注:私は午前中、このテーマに関する同様の質問を注意深くチェックしましたが、役に立ちませんでした。

私の質問

私はMichaelHartlのRuby-on-Railsチュートリアルに従っています。最初のデモアプリはうまく動作します。「WelcomeAboard」と表示され、/ usersを追加すると、デモアプリが実行されます。Herokuにプッシュすると、そこで実行されますが、WelcomeAboardページのみが表示されます。/usersを追加すると、「探していたページは存在しません。」というメッセージが表示されます。ルートは変更しませんでした。この時点で、Herokuでデモアプリを表示できるはずです。チュートリアルが非常に徹底しているので、私は驚いています。

さらなる実験

削除しpublic/index.htmlました。そしてそれをgitから削除してコミットし、で検証しましgit statusた。開こうとするとlocalhost/3000、期待どおりに「ルーティングエラー」が発生します。/ usersを追加すると、デモアプリは期待どおりに機能します。私はroutes.rbを変更しませんでした。チュートリアルでは指示されていません。

ここで、Herokuにプッシュしてアプリケーションを開くと、「探していたページが存在しません」というメッセージが表示されます。そうです。localhost/3000ローカルで実行しているときに開いたのと同じです。しかし、Herokuで「/ users」を追加しても、ページエラーが発生します。ルートを追加する必要がありますか?これはチュートリアルでは言及されていません(または私が何かを見落としていました)。

Railsのこの初心者の助けに感謝します。

より詳しい情報

URLusers/indexに手動で追加しなくても、ローカルホストバージョンをアプリケーションに対して直接開くことができるポイントへのルートを追加しました。usersしかし、完全にコミットしてherokuにプッシュすると、ページエラーが発生します。

レーキルートからの出力は次のとおりです。

~/Documents/demo_app: rake routes
users       GET    /users(.:format)          users#index
            POST   /users(.:format)          users#create
new_user    GET    /users/new(.:format)      users#new
edit_user   GET    /users/:id/edit(.:format) users#edit
user        GET    /users/:id(.:format)      users#show
            PUT    /users/:id(.:format)      users#update
            DELETE /users/:id(.:format)      users#destroy
root                                         users#index
4

1 に答える 1

2

これを試して

heroku run rake db:create
heroku run rake db:migrate

アプリケーションを実行する

# in your terminal write
heroku logs -e production

ターミナルにエラーが表示されるので、わかりやすくなっています。

于 2012-10-05T06:01:48.247 に答える