📖 Scenario: You want to create a simple web app that shows a welcome message on the homepage. This is your first step into building with Rails, a popular web framework.
🎯 Goal: Build a basic Rails app with a homepage that displays the text "Welcome to My First Rails App!"
📋 What You'll Learn
Create a new Rails application named my_first_app
Generate a controller named home with an index action
Set the root route to the home#index action
Create a view for the index action that displays the welcome message
💡 Why This Matters
🌍 Real World
Creating a basic Rails app is the first step to building websites and web services that can handle user requests and show dynamic content.
💼 Career
Understanding how to set up a Rails app, create controllers, routes, and views is essential for web developer roles that use Ruby on Rails.
Progress0 / 4 steps
1
Create a new Rails application
Run the command rails new my_first_app in your terminal to create a new Rails application named my_first_app.
Ruby on Rails
Hint
Use the rails new command followed by the app name my_first_app.
2
Generate a controller with an index action
Inside the my_first_app directory, run rails generate controller home index to create a controller named home with an index action.
Ruby on Rails
Hint
Use rails generate controller home index to create the controller and action.
3
Set the root route to home#index
Open the file config/routes.rb and add the line root 'home#index' to set the homepage route to the index action of the home controller.
Ruby on Rails
Hint
In config/routes.rb, add root 'home#index' inside the Rails.application.routes.draw do block.
4
Create the view with welcome message
Open the file app/views/home/index.html.erb and add the line <h1>Welcome to My First Rails App!</h1> to display the welcome message on the homepage.
Ruby on Rails
Hint
Edit app/views/home/index.html.erb and add an <h1> tag with the welcome text.
Practice
(1/5)
1. What command do you use to create a new Rails application folder?
easy
A. rails init myapp
B. rails new myapp
C. rails create myapp
D. rails start myapp
Solution
Step 1: Understand Rails app creation command
The official command to create a new Rails app is rails new followed by the app name.
Step 2: Match the command with options
Only rails new myapp uses rails new myapp, which is correct syntax.
Final Answer:
rails new myapp -> Option B
Quick Check:
Create app folder = rails new [OK]
Hint: Remember: 'rails new' creates the app folder [OK]
Common Mistakes:
Using 'rails start' instead of 'rails new'
Confusing 'rails create' with 'rails new'
Trying 'rails init' which is not a Rails command
2. Which command starts the Rails server so you can view your app in a browser?
easy
A. rails launch
B. rails start
C. rails run
D. rails server
Solution
Step 1: Identify the command to run the Rails server
The correct command to start the Rails server is rails server.
Step 2: Compare with options
Only rails server matches the correct command exactly.
Final Answer:
rails server -> Option D
Quick Check:
Start server = rails server [OK]
Hint: Use 'rails server' to launch your app locally [OK]
Common Mistakes:
Typing 'rails start' which is invalid
Using 'rails run' which does not start the server
Trying 'rails launch' which is not a Rails command
3. What will happen if you run rails new blog and then cd blog followed by rails server?
medium
A. A new Rails app named 'blog' is created and the server starts to serve it locally.
B. An error occurs because 'rails server' must be run before 'rails new'.
C. The server starts but shows a blank page because no views are created yet.
D. The command fails because 'cd blog' is not a valid Rails command.
Solution
Step 1: Understand the sequence of commands
rails new blog creates a new app folder named 'blog'. cd blog moves into that folder. rails server starts the server for that app.
Step 2: Analyze the expected behavior
Running these commands in order creates the app and starts the server correctly, serving the default Rails welcome page.
Final Answer:
A new Rails app named 'blog' is created and the server starts to serve it locally. -> Option A
Quick Check:
rails new + cd + rails server = app runs [OK]
Hint: Create app, enter folder, then start server to see app [OK]
Common Mistakes:
Thinking 'rails server' must run before app creation
Assuming 'cd blog' is a Rails command instead of shell
Expecting an error when running these commands in order
4. You ran rails new myapp but when you try rails server inside the folder, you get an error. What is the most likely cause?
medium
A. You must create a controller before starting the server.
B. You need to run rails start instead of rails server.
C. You forgot to run bundle install to install dependencies.
D. The folder name 'myapp' is invalid for Rails apps.
Solution
Step 1: Identify common setup step after creating app
After rails new, you usually run bundle install to install gems needed by the app.
Step 2: Understand error cause
If dependencies are missing, rails server will fail to start due to missing gems.
Final Answer:
You forgot to run bundle install to install dependencies. -> Option C
Quick Check:
Missing gems? Run bundle install first [OK]
Hint: Run 'bundle install' after 'rails new' before starting server [OK]
Common Mistakes:
Trying 'rails start' which is invalid
Thinking a controller is required before server start
Believing folder name causes the error
5. You want to create a new Rails app named shop and immediately start the server. Which sequence of commands is correct?
hard
A. rails new shop -> cd shop -> rails server
B. rails create shop -> rails server
C. rails new shop -> rails server
D. cd shop -> rails new shop -> rails server
Solution
Step 1: Create the app folder with correct command
Use rails new shop to create the app folder named 'shop'.
Step 2: Change directory into the new app folder
Run cd shop to move into the app folder before starting the server.
Step 3: Start the Rails server inside the app folder
Run rails server to launch the app locally.
Final Answer:
rails new shop -> cd shop -> rails server -> Option A
Quick Check:
Create app, enter folder, start server = correct order [OK]
Hint: Create app, cd into it, then run server [OK]
Common Mistakes:
Skipping 'cd' before running server
Using 'rails create' which is invalid
Running server outside app folder
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.