我一直在嘗試部署我的本地應用程序在生產Heroku的生產數據庫無法正常工作
我的Gemfile:
source 'https://rubygems.org'
ruby '2.0.0'
gem 'pry', '0.9.12'
gem 'mysql', '2.9.1'
gem 'rails-api', '0.1.0'
gem 'rails', '4.0.1'
gem 'awesome_print', '1.1.0'
group :test, :development do
gem 'raddocs', '0.2.0'
gem 'rspec-rails', '2.13.0'
gem 'rspec-core', '2.13.1'
gem 'rspec_api_documentation', '1.0.0'
end
group :development do
gem 'railroady', '1.1.1'
end
group :test do
gem 'database_cleaner'
gem 'capybara', '2.1.0'
gem 'shoulda-matchers', '1.5.6'
gem 'factory_girl_rails', '4.0'
gem "factory_girl", "4.0"
end
我在我的路線文件的下一個路由:
post '/region/:id/service' => 'region#service'
和我的控制器看起來像這樣:
class RegionController < ApplicationController
def service
region = Region.find params[:id]
render text: region.name
end
end
好了,問題是,當我撥打服務與發展curl
完美的作品:
$ curl -X POST localhost:port/region/6/service -d ""
但是當我將文件上傳到Heroku的,我又撥打服務 我越來越404未找到(錯誤)或500內部服務器(誤差)
我根據the documentation使用cleardb
插件。
我認爲問題是數據庫。起初,我寫我的的database.yml爲生產環境按照以下數據庫信息:
$ heroku config | grep CLEARDB_DATABASE_URL
,但我覺得是不是因爲neccesary的Heroku可以根據這條線自動做...我認爲如此
-----> Writing config/database.yml to read from DATABASE_URL
我試過兩種方式沒有結果,我真的不知道爲什麼服務崩潰時,我嘗試做生產查詢。
我的database.yml看起來像
development:
adapter: mysql
password: xxx
database: myapp.development
pool: 5
timeout: 5000
test:
adapter: mysql
password: xxx
database: myapp.test_1
pool: 5
timeout: 5000
production:
adapter: mysql
encoding: utf8
database: xxx
username: yyy
password: zzz
pool: 5
timeout: 5000
host: us-cdbr-east-04.cleardb.com
請發表您的日誌,以便我們可以看到您的錯誤和調試從那裏。 – bacongobbler
只是一個猜測,但我認爲你將不得不刪除默認的postgres數據庫插件。 – phoet