わかりました、これは非常に苛立たしくなっており、次から次へと問題が発生しています。アプリをherokuにプッシュし、URLにアクセスすると、ログイン画面が表示されます(当然のことです)。しかし、実際にログインしようとすると、「無効なユーザー名/パスワード」という警告メッセージが表示されます。ただし、私のローカルホストではすべて正常に動作します。アプリとデータベースとの通信に問題があると思います。「heroku run rake db:migrate」を実行しましたが、うまくいきません。
私のローカルホストでは、標準の sqlite3 データベースを使用していますが、エラーを避けるために、heroku にプッシュするときに gem ファイルに gem 'pg' を含める必要がありました。gem sqlite3 のままにしておくと、sqlite3.h ファイルまたはそのようなものが見つからないというエラーが表示されました。
データベースが postgres.heroku.com にあることがわかります。herokuサポートの推奨により、このgemもインストールしました
gem 'activerecord-postgresql-adapter'
ログイン情報を入力しようとしたときのherokuのログを次に示します。どんな助けでも大歓迎です。
←[36m2013-04-04T14:31:15+00:00 app[web.1]:←[0m Started POST "/session" for 74.143.68.203 at 2013-04-04 14:31:15 +0000
←[36m2013-04-04T14:31:15+00:00 app[web.1]:←[0m Processing by SessionsController#create as HTML
←[36m2013-04-04T14:31:15+00:00 app[web.1]:←[0m Parameters: {"utf8"=>"???", "authenticity_token"=>"rQ1i9DRCV3qju2+RSBwp/9XYW8+6RiLfKfGZFNEcbT8=", "email"=>"admin@ciagent.com", "password"=>"[FILTERED]", "commit"=>"Login"}
←[36m2013-04-04T14:31:15+00:00 app[web.1]:←[0m Rendered sessions/new.html.erb within layouts/application (0.9ms)
←[36m2013-04-04T14:31:15+00:00 app[web.1]:←[0m Completed 200 OK in 4ms (Views: 2.2ms | ActiveRecord: 1.2ms)
←[33m2013-04-04T14:31:16+00:00 heroku[router]:←[0m at=info method=GET path=/favicon.ico host=boiling-reef-2060.herokuapp.com fwd="74.143.68.203" dyno=web.1 connect=2ms service=7ms status=304 bytes=0
←[33m2013-04-04T14:31:15+00:00 heroku[router]:←[0m at=info method=POST path=/session host=boiling-reef-2060.herokuapp.com fwd="74.143.68.203" dyno=web.1 connect=1ms service=12ms status=200 bytes=1721
アプリが同じユーザー名/パスワードでlocalhostにあるときにログインできる理由がわかりませんが、アプリがherokuにあるとログイン情報を認識できません。
追加編集_ _ _ _ _ _ _ ____
ローカル アプリのコンソールを開くと、ユーザーを探すときに期待していたものが見つかりました。
$ rails c
Loading development environment (Rails 3.2.13)
irb(main):001:0> user=User.find(1)
←[1m←[36mUser Load (5.0ms)←[0m ←[1mSELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1←[0m [["id", 1]]
=> #<User id: 1, email: "admin@ciagent.com", hashed_password: "dc009272b087019fb2b20b691dc827dca1424a1a", created_at: "2010-10-29 19:43:00", updated_at: "2011-01-12 20:07:09", admin: "yes", logo: nil>
heroku でコンソールを開いたときにこれを探したところ、受け取ったエラーは次のとおりです。私は修正を探し続けますが、おそらく皆さんは明らかな危険信号を目にするでしょう。
Connecting to database specified by DATABASE_URL
Loading production environment (Rails 3.2.13)
irb(main):001:0> user=User.find(1)
user=User.find(1)
User Load (39.1ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1 [["id", 1]]
ActiveRecord::RecordNotFound: Couldn't find User with id=1
from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.13/lib/active_record/relation/finder_methods.rb:343:in `find_one'
from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.13/lib/active_record/relation/finder_methods.rb:314:in `find_with_ids'
from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.13/lib/active_record/relation/finder_methods.rb:107:in `find'
from /app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.13/lib/active_record/querying.rb:5:in `find' from (irb):1
from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands/console.rb:47:in `start'
from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands/console.rb:8:in `start'
from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands.rb:41:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'