[英]Strange error when pushing app to heroku
我是將應用程序推向生產環境的新手。 我選擇Heroku作為生產環境。 當我嘗試git push heroku master
,出現以下錯誤日志。 關於什么可能導致此的任何想法?
remote: -----> Preparing app for Rails asset pipeline
remote: Running: rake assets:precompile
remote: PG::UndefinedTable: ERROR: relation "steps" does not exist
remote: LINE 5: WHERE a.attrelid = '"steps"'::regclass
remote: ^
remote: : SELECT a.attname, format_type(a.atttypid, a.atttypmod),
remote: pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
remote: FROM pg_attribute a LEFT JOIN pg_attrdef d
remote: ON a.attrelid = d.adrelid AND a.attnum = d.adnum
remote: WHERE a.attrelid = '"steps"'::regclass
remote: AND a.attnum > 0 AND NOT a.attisdropped
remote: ORDER BY a.attnum
remote: rake aborted!
我的遷移文件中確實有一個稱為steps
的表,該站點在開發中運行良好。
嘗試運行命令heroku run rake db:migrate
然后重新按下並查看是否有效。
如@sheltond所述,Heroku要求您安裝幾個寶石。 如果您還沒有這樣做,請向您的gemfile添加以下內容並運行bundler
group :production do
gem 'pg'
gem 'rails_12factor'
end
如果發現您無法在Heroku上運行“ rake”,那么如果正確設置了環境,則應該可以在本地運行它。
通常,在部署以指向已為應用程序配置的postgres數據庫時,Heroku會覆蓋應用程序的數據庫設置。
但是,如果使用“ heroku config”,則可以看到數據庫設置是什么。 如果將它們復制到“生產”配置下的config / database.yml中,則應該能夠運行以下內容:
RAILS_ENV=production rake db:migrate
它應該更新Heroku postgres數據庫。
您需要確保已在本地安裝了postgres數據庫gem才能正常工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.