0

そのため、ローカルで SQLite3 で正常に動作するアプリを Postgresql に変更して、Heroku にデプロイできるようにしようとしています。さまざまな投稿やチュートリアルを見て、Gem ファイルと database.yml ファイルを調整しましたが、rake:db migrate しようとすると、「postgresql アダプターをインストールしてください」というエラー メッセージが表示されます。ほとんどのユーザーは、gemfile に gem 'pg' が含まれていない場合にこれに遭遇することを知っていますが、私はそれを含めました。

これは私が得る完全なエラーメッセージです: http://dpaste.com/hold/972379/

助けていただけますか?私は実際に何十もの投稿を見て、すべての構成を試しました。

私のprocfileは次のようになります:

web: bundle exec thin start -p $PORT

私の database.yml は次のようになります。

development:
  adapter: postgresql
  encoding: utf8
  database: project_development
  pool: 5
  username: 
  password:

test: &TEST
  adapter: postgresql
  encoding: utf8
  database: project_test
  pool: 5
  username: 
  password:

production:
  adapter: postgresql
  encoding: utf8
  database: project_production
  pool: 5
  username: 
  password:

私の宝石ファイルは次のようになります。

source 'https://rubygems.org'

gem 'rails', '3.2.11'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'thin'
group :production do
gem 'pg'
end
group :development, :test do
gem 'sqlite3'
end

# Gems used only for assets and not required
# in production environments by default.

宝石「jquery-rails」

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'debugger'

1 つの注意: bundle install を実行すると、「Using pg」が表示されませんが、それは実稼働環境にないためだと思います...重要な場合に備えて参考までに

編集: gem pg は、heroku を使用して本番環境で一度正常に動作するようです。ただし、展開されると機能しないため、何が起こっているのかわかりません。これが私のherokuログです(電子メールを取り出しました):

2013-02-23T05:37:08+00:00 heroku[api]: Enable Logplex by XXXX@email.com
2013-02-23T05:37:08+00:00 heroku[api]: Release v2 created by XXXX@email.com
2013-02-23T05:37:18+00:00 heroku[slugc]: Slug compilation started
2013-02-23T05:38:28+00:00 heroku[api]: Scale to web=1 by XXXX@email.com
2013-02-23T05:38:28+00:00 heroku[api]: Attach HEROKU_POSTGRESQL_WHITE resource by XXXX@email.com
2013-02-23T05:38:28+00:00 heroku[api]: Release v3 created by XXXX@email.com
2013-02-23T05:38:29+00:00 heroku[api]: Add DATABASE_URL config by XXXX@email.com
2013-02-23T05:38:29+00:00 heroku[api]: Release v4 created by XXXX@email.com
2013-02-23T05:38:29+00:00 heroku[api]: Add  config by XXXX@email.com
2013-02-23T05:38:29+00:00 heroku[api]: Release v5 created by XXXX@email.com
2013-02-23T05:38:29+00:00 heroku[api]: Release v6 created by XXXX@email.com
2013-02-23T05:38:29+00:00 heroku[api]: Deploy cd00730 by XXXX@email.com
2013-02-23T05:38:30+00:00 heroku[slugc]: Slug compilation finished
2013-02-23T05:38:30+00:00 heroku[web.1]: Starting process with command `bundle exec thin start -p 55861`
2013-02-23T05:38:31+00:00 heroku[web.1]: Starting process with command `bundle exec thin start -p 55416`
2013-02-23T05:38:31+00:00 app[web.1]: bash: bundle: command not found
2013-02-23T05:38:32+00:00 heroku[web.1]: Process exited with status 127
2013-02-23T05:38:34+00:00 app[web.1]: DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released. (called from <top (required)> at /app/config/environment.rb:5)
2013-02-23T05:38:34+00:00 app[web.1]: DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released. (called from <top (required)> at /app/config/environment.rb:5)
2013-02-23T05:38:34+00:00 app[web.1]: DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released. (called from <top (required)> at /app/config/environment.rb:5)
2013-02-23T05:38:37+00:00 app[web.1]: >> Using rack adapter
2013-02-23T05:38:37+00:00 app[web.1]: Connecting to database specified by DATABASE_URL
2013-02-23T05:38:37+00:00 app[web.1]: >> Maximum connections set to 1024
2013-02-23T05:38:37+00:00 app[web.1]: >> Thin web server (v1.5.0 codename Knife)
2013-02-23T05:38:37+00:00 app[web.1]: >> Listening on 0.0.0.0:55416, CTRL+C to stop
2013-02-23T05:38:38+00:00 heroku[web.1]: State changed from starting to up
2013-02-23T05:39:00+00:00 heroku[api]: Starting process with command `bundle exec rake db:migrate` by ray.lee@dartmouth.edu
2013-02-23T05:39:02+00:00 heroku[run.3422]: Awaiting client
2013-02-23T05:39:02+00:00 heroku[run.3422]: Starting process with command `bundle exec rake db:migrate`
2013-02-23T05:39:02+00:00 heroku[run.3422]: State changed from starting to up
2013-02-23T05:39:07+00:00 heroku[run.3422]: Client connection closed. Sending SIGHUP to all processes
2013-02-23T05:39:08+00:00 heroku[run.3422]: Process exited with status 0
2013-02-23T05:39:08+00:00 heroku[run.3422]: State changed from up to complete
2013-02-23T05:39:14+00:00 app[web.1]: Started GET "/" for 67.80.190.0 at 2013-02-23 05:39:14 +0000
2013-02-23T05:39:15+00:00 app[web.1]: Processing by LooksController#index as HTML
2013-02-23T05:39:15+00:00 app[web.1]:   Rendered looks/index.html.erb within layouts/application (7.7ms)
2013-02-23T05:39:16+00:00 heroku[router]: at=info method=GET path=/ host=quiet-everglades-5513.herokuapp.com fwd="67.80.190.0" dyno=web.1 queue=0 wait=1ms connect=2ms service=1385ms status=500 bytes=643
2013-02-23T05:39:16+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=quiet-everglades-5513.herokuapp.com fwd="67.80.190.0" dyno=web.1 queue=0 wait=0ms connect=1ms service=7ms status=200 bytes=0
2013-02-23T05:39:16+00:00 app[web.1]: 
2013-02-23T05:39:16+00:00 app[web.1]:     5:   <%= stylesheet_link_tag    "application", :media => "all" %>
2013-02-23T05:39:16+00:00 app[web.1]:     8: </head>
2013-02-23T05:39:16+00:00 app[web.1]: Completed 500 Internal Server Error in 925ms
2013-02-23T05:39:16+00:00 app[web.1]:   app/controllers/looks_controller.rb:7:in `index'
2013-02-23T05:39:16+00:00 app[web.1]:     3: <head>
2013-02-23T05:39:16+00:00 app[web.1]: ActionView::Template::Error (no such file to load -- uglifier
2013-02-23T05:39:16+00:00 app[web.1]:   (in /app/app/assets/javascripts/application.js)):
2013-02-23T05:39:16+00:00 app[web.1]:   app/views/layouts/application.html.erb:6:in `_app_views_layouts_application_html_erb___1708027661978307033_32644180'
2013-02-23T05:39:16+00:00 app[web.1]: 
2013-02-23T05:39:16+00:00 app[web.1]:     6:   <%= javascript_include_tag "application" %>
2013-02-23T05:39:16+00:00 app[web.1]: 
2013-02-23T05:39:16+00:00 app[web.1]:     7:   <%= csrf_meta_tags %>
2013-02-23T05:39:16+00:00 app[web.1]:     9: <body>
2013-02-23T05:39:16+00:00 app[web.1]:     4:   <title>Scout</title>
4

2 に答える 2

1

提供したログファイルに別のエラーが記載されています

ActionView::Template::Error (no such file to load -- uglifier
  (in /app/app/assets/javascripts/application.js)):
app/views/layouts/application.html.erb:6:in `_app_views_layouts_application_html_erb___1708027661978307033_32644180'

uglifierアセットをプリコンパイルして最適化するために使用されるgemです。私のアプリでは、assetsデフォルトでグループに含まれているため、本番環境では使用できません。

私はHerokuに完全に精通しているわけではありませんが、アセットパイプラインの使用に関する情報が役立つ可能性があります。また、 Herokuの「Cedar」スタックにいることを確認する必要があります。

または、アセットパイプラインを使用していない場合は、無効にします

于 2013-02-23T08:25:51.037 に答える
0

必要な作業は次のとおりです。

  1. お使いのバージョンの Mac OS 用のコマンド ライン ツールをここからダウンロードしますhttps://developer.apple.com/downloads/index.action

  2. ダウンロードしたコマンド ライン ツールをインストールする

  3. ターミナルを再起動する

  4. bundle install を再度実行します (デフォルト グループの pg gem を使用)。

これにより、pg のインストール時に発生するエラーが解消されるはずです。インストール後、rake db:migrate再度実行すると動作するはずです。

于 2013-02-23T02:14:33.493 に答える