Se você já iniciou um projeto Ruby on Rails sem grandes pretensões com banco de dados SQLite, mas depois percebeu que precisaria mudar para Postgres, pode ter tido uma experiência estressante para re-configurar toda sua aplicação.
Até a versão Rails 5.X essa troca era um pouco "traumática" pois envolvia customizar o arquivo config/database.yml
e em caso de erro o seu deploy poderia falhar, por exemplo. Para minimizar esse problema no Rails 6.X o time criou uma rake para mudar o seu database.yml
e o seu projeto para as configurações do novo banco.
Basta você rodar o comando:
rails db:system:change --to=postgresql
conflict config/database.yml
Overwrite /home/henrique/Documents/alumni/project_test/config/database.yml? (enter "h" for help) [Ynaqdhm] Y
force config/database.yml
gsub Gemfile
gsub Gemfile
Assim o nosso arquivo database.yml
foi alterado para o formato padrão de banco postgres e o Gemfile
já foi atualizado trocando o sqlite3
por pg
na versão correta.