把隊友的專案clone下來,為什麼沒辦法啟動Rails Server了?-應該是因為database換成PostgreSQL了吧
在AstroCamp分組、確定要做的網站之後,大家開始要rails new出專案,並且開始實際跑團隊協作了。
因為後面會用到Heroku的服務,所以我們這組在一開始就決定把Database設為pg。然後新手會遇到問題就來了😊
rails db:create
之前上課練習的專案都還在用Rails給的sqlite,一般clone或下載了新的專案下來,只要跑rails db:migrate就可以,sqlite可以只做到這步。
但PostgreSQL不是sqlite。
你得先下指令
$ rails db:create
在同學的文章裡有提到這一步,在安裝PostgreSQL的時候,也是這指令和先前的sqlite有所區別。
如果database是使用MySQL,也是要先create起來。
是說,剛clone下來的專案才要做 rails db:create 。
後續fetch專案分支進度以後,已經有 schema 和 seed,可以試下指令:
$ rails db:setup
據學長的文章,其效果等於 db:create
+ db:schema:load
+ db:seed
然後再跑sqlite也要做的
$ rails db:migrate
PG::ConnectionBad
班上有同學(也是用Macbook)在做 rails db:create
時遇到了 PG::ConnectionBad 的問題,但我沒辦法在這部份加入文章,因為我的Macbook沒遇到這問題,所以只能先簡單找個文章備註一下。
References
Sqlite vs. MySQL vs. PostgreSQL: A Comparison of Relational Databases
Changing sqlite to PostgreSQL in ruby on rails
我想要把 rails 的內建資料庫改成postgreSQL
在 Rails 專案安裝 PostgreSQL