Book Image

From PHP to Ruby on Rails

By : Bernard Pineda
4 (1)
Book Image

From PHP to Ruby on Rails

4 (1)
By: Bernard Pineda

Overview of this book

Are you a PHP developer looking to take your first steps into the world of Ruby development? From PHP to Ruby on Rails will help you leverage your existing knowledge to gain expertise in Ruby on Rails. With a focus on bridging the gap between PHP and Ruby, this guide will help you develop the Ruby mindset, set up your local environment, grasp the syntax, master scripting, explore popular Ruby frameworks, and find out about libraries and gems. This book offers a unique take on Ruby from the perspective of a seasoned PHP developer who initially refused to learn other technologies, but never looked back after taking the leap. As such, it teaches with a language-agnostic approach that will help you feel at home in any programming language without learning everything from scratch. This approach will help you avoid common mistakes such as writing Ruby as if it were PHP and increase your understanding of the programming ecosystem as a whole. By the end of this book, you'll have gained a solid understanding of Ruby, its ecosystem, and how it compares to PHP, enabling you to build robust and scalable applications using Ruby on Rails.
Table of Contents (15 chapters)
1
Part 1:From PHP to Ruby Basics
8
Part 2:Ruby and the Web

Connecting to a database

So far, we’ve created a Person model and the migrations needed for the structure of our database. Now we are ready to connect to our database. But wait, we’ve already connected to a database! As previously stated, if we were able to run our migration successfully, it means that we did indeed connect to the SQLite database. Now let’s take a look at how Rails is configured to do this. Let’s examine our Gemfile, and in doing so, we’ll see the following line:

…
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
…

The preceding line installs the sqlite3 gem that allows Rails to communicate with a SQLite database. But wait, there’s more. If we open the app/config/database.yml file, we will also see some of the database settings for our project:

…
default: &default
  adapter: sqlite3
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %&gt...