DEV Community

Saral Karki
Saral Karki

Posted on

Rails with Postgresql

Postgresrails
During the last project, it was only when I was deploying the app to heroku that I learnt that heroku supported postgresql. I then changed the database to postgresql from the default sqlite that rails came with.

For the project that I am embarking on, I decided to start off using postgresql to begin with.

I created the app the usual way rails new (appname), and then proceded to change the database detail. In the database.yml file I changed the default details to

default: &default adapter: postgresql pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> timeout: 5000 development: <<: *default database: app_development test: <<: *default database: app_test production: <<: *default database: app_production 
Enter fullscreen mode Exit fullscreen mode

I also added the gem pg to the gemfile and ran bundle install to install postgresql.

With this done, I ran rails db:create that created the database. I then created my users model. This time around I will be using the devise gem for the users authentication process. Finally, I ran rails db:migrate and my model was ready.

After all this was done, I found out that I could have skipped the process of changing the database.yml file had I mentioned the kind of database I would be using while generating my app with rails new app --database postgresql.

Did I learn something today? Yes, I did even though I did not get a lot of coding hours logged in today. I intend to start working with devise tomorrow, so I tomorrow's post will be all about getting started with the devise gem.

Top comments (0)