質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.49%

  • Ruby

    7920questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Ruby on Rails

    7473questions

    Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

  • MySQL

    5999questions

    MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

  • Heroku

    904questions

    HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

【Heroku】databaseに情報を入れると「The page you were looking for doesn't exist.」のエラーが出る

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,314

Soichiron

score 1

初めて質問させていただきます。

Railsを使って初めのウェブサイトを作っており、Herokuに公開しようとしました。

初めは全てのページが見れていました。
ですが、サイトの機能であるデータベースへの情報の入力を行ったところ、
その後から急に画面が表示できなくなり、「The page you were looking for doesn't exist.」
の表示が出るようになりました。

そこで、試しにSequel Proを使ってデータベース内のデータを直接削除すると、
再びページが表示できるようになりました。
(しかし、もう一度データを入力するとまた同じ現象となります。)

データベースに入力をしてもきちんとページを表示する方法はないものでしょうか。

以下、ソースコード等です。
何が必要となるかわからなかったのでとりあえず必要そうなものを書き出しました。
もし他に別のものが必要でしたら言ってください。

/config/database.yml
default: &default
  adapter: mysql2
  encoding: utf8
  pool: 5
  username: root
  password:
  socket: /tmp/mysql.sock

development:
  <<: *default
  database: shareipt_development

test:
  <<: *default
  database: shareipt_test

production:
  adapter: mysql2
  database: <%= ENV['DB_NAME'] %>
  username: <%= ENV['DB_USERNAME'] %>
  password: <%= ENV['DB_PASSWORD'] %>
  host:     <%= ENV['DB_HOSTNAME'] %>
  port:     <%= ENV['DB_PORT'] %>

routes.rb
Rails.application.routes.draw do
  devise_for :users
  root 'receipts#index'
  get 'receipts' => 'receipts#index'
  get 'receipts/new' => 'receipts#new'
  post 'receipts' => 'receipts#create'
  get 'users/:id' => 'users#show'
  delete 'receipts/:id' => 'receipts#destroy'
  get 'receipts/:id/edit' => 'receipts#edit'
  patch 'receipts/:id' => 'receipts#update'
end

Gemfile
source 'https://rubygems.org'
gem 'rails', '4.2.1'
gem 'mysql2'
gem 'sass-rails', '~> 4.0.2'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.1.0'
gem 'turbolinks'
gem 'jbuilder', '~> 2.0'
gem 'byebug'
gem 'web-console', '~> 2.0'
gem 'spring'
gem 'pry-rails'
gem 'compass-rails','~> 2.0'
gem 'sprockets', '2.11.0'
gem 'kaminari'
gem 'devise'
gem 'rails_12factor'
gem 'sdoc', '~> 0.4.0', group: :doc
group :development, :test do
end

secrets.yml
development:
  secret_key_base: c149492e994d56d8e74ed45e5ae4f0a79c35cb61a1b6e8755b4d2c70ee342b6582d0fd44923b228bf80eb661050ac78148e16c441c0ecdc602e5f34dfe0c05ba

test:
  secret_key_base: 7f9a67de771177d1a77599b88d2ce76b52ea5edd86255e9961a7a714ecaeeaa9fb25ffc311aaf7e80aaa874256c15139ac7ac484bdc93e85d2b247ba8284152f

  secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>

【追記】heroku logs
2015-04-22T15:50:28.152801+00:00 heroku[web.1]: State changed from down to starting
2015-04-22T15:50:28.152558+00:00 heroku[web.1]: Unidling
2015-04-22T15:50:32.330348+00:00 heroku[web.1]: Starting process with command `bin/rails server -p 54072 -e production`
2015-04-22T15:50:35.169280+00:00 app[web.1]: Warning: You're using Rubygems 2.0.14 with Spring. Upgrade to at least Rubygems 2.1.0 and run `gem pristine --all` for better startup performance.
2015-04-22T15:50:37.919766+00:00 app[web.1]: => Booting WEBrick
2015-04-22T15:50:37.919781+00:00 app[web.1]: => Rails 4.2.1 application starting in production on http://0.0.0.0:54072
2015-04-22T15:50:37.919783+00:00 app[web.1]: => Run `rails server -h` for more startup options
2015-04-22T15:50:37.919789+00:00 app[web.1]: => Ctrl-C to shutdown server
2015-04-22T15:50:39.165815+00:00 app[web.1]: [2015-04-22 15:50:39] INFO  WEBrick 1.3.1
2015-04-22T15:50:39.165905+00:00 app[web.1]: [2015-04-22 15:50:39] INFO  ruby 2.0.0 (2015-04-13) [x86_64-linux]
2015-04-22T15:50:39.166270+00:00 app[web.1]: [2015-04-22 15:50:39] INFO  WEBrick::HTTPServer#start: pid=3 port=54072
2015-04-22T15:50:39.405421+00:00 heroku[web.1]: State changed from starting to up
2015-04-22T15:50:51.450418+00:00 heroku[router]: at=info method=GET path="/" host=hatabohh.herokuapp.com request_id=8b578bc7-a235-473b-8fb8-bfdef3a3f3a5 fwd="36.12.15.215" dyno=web.1 connect=1ms service=9238ms status=404 bytes=1829
2015-04-22T15:50:51.851896+00:00 heroku[router]: at=info method=GET path="/favicon.ico" host=hatabohh.herokuapp.com request_id=fa5b9c59-1c77-41f5-ba2a-bf24e459347c fwd="36.12.15.215" dyno=web.1 connect=1ms service=11ms status=304 bytes=133
2015-04-22T15:52:01.590293+00:00 heroku[router]: at=info method=GET path="/" host=hatabohh.herokuapp.com request_id=9baee8cf-8cd0-425e-845f-8b3dd6346345 fwd="36.12.15.215" dyno=web.1 connect=4ms service=62ms status=404 bytes=1829

よろしくお願いします。
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

0

ログに何か出力されていませんか?

なんとなくですが、テーブルに入っている情報と、モデルとの間に不整合があるのでは? という気がします。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/04/23 01:01

    こんにちは。
    ご回答ありがとうございます!そして、お返事が遅くなってしまってすみません。

    heroku logsの内容を質問文に追記しました。
    こちらで何か解決につながる情報が出ていないでしょうか・・・
    gemのバージョンが古いというwarningが出ていますが、こちらでしょうか。
    (過去に一度アップデートを試みたのですが、うまく変更できずそのままとしています)

    また、テーブルに入っている情報とモデルの不整合・・・どうやって検証したらいいでしょうか。教えていただけますと幸いです。
    よろしくお願いします。

    キャンセル

  • 2015/04/23 03:51

    ログはこれだけですか?

    ここにあるWarningは、Springが期待しているRubygemsのバージョンが古すぎる、というものです。Springを使うのであれば、Rubygemsのバージョンアップを実施すべきかと思います。(おそらく、Springを使いたいと決めているわけではなく、Rails 4.2.1を使おうとしているだけだろうとは思いますが。)

    このログは、実際にDBにデータを入れて、問題が発生したときのログですか?
    DBに関係した出力はないように見えますが。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.49%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Ruby

    7920questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Ruby on Rails

    7473questions

    Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

  • MySQL

    5999questions

    MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

  • Heroku

    904questions

    HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。