0

非常に基本的なRailsアプリをHerokuにデプロイしようとしています。それはsqlite3で実行され、デプロイするのにいくつか問題がありました。

まず、gemに開発中のsqlite3がリストされていることを確認しました。これでインデックスページがようやく機能するようになりましたが、これをデプロイして、実際にデータベースに依存しているページの部分へのリンクをたどろうとすると、herokuエラーが発生します。私はログを少し見つめていましたが、何が起こっているのかわからなかったので、ここの誰かがそうすることを望んでいました。今のところ、最後のアクション(リンクをたどる)と思われるもののログを投稿します。

2012-09-13T01:00:23+00:00 heroku[router]: GET bloc-blog-1.herokuapp.com/ dyno=web.1 queue=0 wait=0ms service=187ms status=200 bytes=531
2012-09-13T01:00:24+00:00 heroku[router]: GET bloc-blog-1.herokuapp.com/assets/application-0149f820dbdd285aa65e241569d8c256.css dyno=web.1 queue=0 wait=0ms service=9ms status=200 bytes=811
2012-09-13T01:00:24+00:00 heroku[router]: GET bloc-blog-1.herokuapp.com/assets/application-1c74ddb87f4b5b3c36c58d068d148c95.js dyno=web.1 queue=0 wait=0ms service=9ms status=200 bytes=99469
2012-09-13T01:00:27+00:00 app[web.1]: 
2012-09-13T01:00:27+00:00 app[web.1]: 
2012-09-13T01:00:27+00:00 app[web.1]: Started GET "/posts" for 50.131.223.42 at 2012-09-13 01:00:27 +0000
2012-09-13T01:00:27+00:00 app[web.1]: Processing by PostsController#index as HTML
2012-09-13T01:00:27+00:00 app[web.1]: Completed 500 Internal Server Error in 75ms
2012-09-13T01:00:27+00:00 app[web.1]: 
2012-09-13T01:00:27+00:00 app[web.1]: LINE 4:              WHERE a.attrelid = '"posts"'::regclass
2012-09-13T01:00:27+00:00 app[web.1]:                                         ^
2012-09-13T01:00:27+00:00 app[web.1]: :             SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc, a.attnotnull
2012-09-13T01:00:27+00:00 app[web.1]:               FROM pg_attribute a LEFT JOIN pg_attrdef d
2012-09-13T01:00:27+00:00 app[web.1]: ActiveRecord::StatementInvalid (PG::Error: ERROR:  relation "posts" does not exist
2012-09-13T01:00:27+00:00 app[web.1]:                 ON a.attrelid = d.adrelid AND a.attnum = d.adnum
2012-09-13T01:00:27+00:00 app[web.1]:              WHERE a.attrelid = '"posts"'::regclass
2012-09-13T01:00:27+00:00 app[web.1]: ):
2012-09-13T01:00:27+00:00 app[web.1]: 
2012-09-13T01:00:27+00:00 app[web.1]:   app/controllers/posts_controller.rb:5:in `index'
2012-09-13T01:00:27+00:00 app[web.1]:                AND a.attnum > 0 AND NOT a.attisdropped
2012-09-13T01:00:27+00:00 app[web.1]: 
2012-09-13T01:00:27+00:00 app[web.1]:              ORDER BY a.attnum
2012-09-13T01:00:27+00:00 heroku[router]: GET bloc-blog-1.herokuapp.com/posts dyno=web.1 queue=0 wait=0ms service=86ms status=500 bytes=643

ありがとう!

4

1 に答える 1

1

HerokuはPostgreSQLを使用しています。Railsチュートリアルブックの指示に従ってPostgreSQLをローカルにインストールし、HerokuDB環境を複製できるようにします。 Heroku自体と、ほぼすべてのチュートリアルで、sqlite3で開発してからPostgreSQLにデプロイすることは危険にさらされていると警告しています。

于 2012-09-13T01:09:01.547 に答える