Logo Logo white GoRails
Path Series Lessons Forum
Courses
Rails for Beginners

How to build a complete, real-world application from scratch with Ruby on Rails step by step.

Advanced Ruby: Behind the Magic

A lot of Ruby code is "magic". We'll explain the magic and see how it works using the powerful tools Ruby gives us.

Payments with Rails Master Class

Accept subscription and one-time payments with Stripe in your Rails apps

Refactoring Rails

Expert advice on keeping Rails apps organized and fast.

Learn Hotwire

Learn how to build fast, modern web apps with HTML over the wire.

Content
Install and Deploy Rails Guides

Setup your computer with Ruby on Rails and deploy to a production server.

Apps
Hatchbox.io

Cheap, easy hosting for Ruby and Rails apps.

Jumpstart Rails SaaS Template

Launch your product business way faster with our SaaS template.

Other
Remote Ruby Podcast

A weekly podcast on web development and building products with Ruby, Rails, Javascript, and more.

GoRails Open Source

A few of the Open Source projects we do at GoRails.

Rails Hackathon

Build a Ruby on Rails app in 48 hours with us.

Beginner Bounties

Help Junior developers get hired by sharing small projects to build their resume with paid work.

Ruby on Rails Job Board

Find your next Ruby on Rails Job.

Pricing
Log In Sign Up
28m

Upload Cover Images in Rails with ActiveStorage

Apr 19, 2023

Blog posts often need cover images for social sharing. In this lesson, we'll add cover image file uploads with ActiveStorage.

6
15m

Decorating with SimpleDelegator and Modules

Apr 10, 2023 Pro

We look at using the built in SimpleDelegator class to easily create decorators for objects.

5
31m

How to Add Pagination for Blog Posts in Rails

Apr 05, 2023

Pagination is something we don't need until we publish a lot of blog posts. We can use the pagy gem to add page links to the bottom of our pages and handle thousands of blog posts.

6
5m

How to Upgrade Ruby Versions

Apr 05, 2023

Over time, you'll need to upgrade the Ruby version of your Rails application. For example, a new version of Ruby was released since we started this series that fixes a couple security issues in Ruby so we'll teach you how to upgrade your Ruby version.

0
11m

The MVC Pattern Explained

Apr 04, 2023

Rails uses the MVC Pattern. This isn't as scary as it sounds. It's basically a design architecture that gives you 3 primary buckets to help you organize your code.

5
21m

Blog Posts with File Uploads using ActiveStorage & Amazon S3

Apr 03, 2023

ActionText builds on top of the ActiveStorage file uploads feature in Rails, so we're going to configure Amazon S3 storage so we can upload files in production

26
16m

Rich Text Blog Posts with ActionText

Apr 03, 2023

ActionText is a feature of Rails that allows you to add rich text including file uploads to any of your models. This is a perfect fit for our Blog Posts, so we're going to replace the text column with a rich text field with ActionText.

19
9m

Sorting Blog Posts With Scopes

Apr 03, 2023

Scopes are a way for us to change the way a database table is queried. For example, we can use them to change the ordering of the results so certain records are first.

4
15m

Writing Tests for Scheduled Blog Posts

Apr 03, 2023

Our scheduled blog posts adds some complexity to our app. In this lesson, we're going to write some tests to make sure that our code does what we want it to do.

2
24m

Adding Scheduled Blog Posts

Apr 03, 2023

Scheduling blog posts to be published in the future is the next feature we're going to add. In this lesson, we'll talk about several options we have to implement this and then choose one to build.

23
17m

Deploying our Rails Blog to Production

Apr 03, 2023

Next we're going to deploy our Rails blog application to production! This is a huge step, but also

18
7m

Adding TailwindCSS to Rails

Apr 03, 2023

Our blog doesn't look great. We're going to install TailwindCSS so we can easily style our Rails application however we want.

12
20m

Authenticating Blog Admin Pages

Apr 03, 2023

Anyone can create, edit, or delete a blog post in our Rails app currently. In this lesson, we'll add authentication so only allowed users can do those actions.

19
12m

Adding a Blog Post Destroy Action and Refactoring

Apr 03, 2023

We want to be able to delete blog posts we no longer want. We'll learn how to delete blog posts and refactor our code in this lesson.

10
11m

Edit & Update Blog Post Actions

Apr 03, 2023

Implementing Edit and Update actions are straightforward now. We can reuse what we've learned with New and Create and reuse some of the logic to edit and update database records in Rails.

2
10m

Creating New Blog Posts

Apr 03, 2023

Handling form submissions with Rails teaches us about strong parameters and saving data with our Rails models into the database.

0
8m

Adding a New Blog Post Action

Apr 03, 2023

We now want to create new Blog Posts in our Rails app, not directly in the database. To do this, we're going to start by building a new action and form for inputting data for our Rails model.

10
16m

Adding a Blog Post Show Action

Apr 03, 2023

We need a way to view individual Blog Posts on their own URLs now. That's where our Show action comes into play and we will learn how to build that in this lesson.

3
11m

Adding a Blog Index Action

Apr 03, 2023

An index page allows us to display all the blog posts in our database. We will learn how to setup routes that point to controllers and actions that render HTML.

7
10m

Creating A Blog Post Model

Apr 03, 2023

The first thing we need is a database table to store our blog posts. We create a Rails model (the M in MVC) to create the database and a Ruby class for us to interact with the database table.

22
<1…101112…39>
Filter By
All Episodes Free Episodes Pro Episodes
Sort By
Published Date Popularity
Categories
ActionCable ActionMailbox ActionText ActiveJob ActiveModel ActiveRecord ActiveStorage ActiveSupport Administration APIs Authentication Authorization Background Jobs Basics Caching Code Organization Code Review Comments Complete App Concerns Controllers Credentials CSS CSV Debugging Deployment Design Patterns Development Docker Emails Ember Errors File Uploading Fixtures Forms Frontend Gems Generators Geocoding Helpers Hotwire Internationalization iOS Javascript JavaScript Maps Messaging Metaprogramming Middleware Mobile Models Multitenancy Notifications OAuth Open Source Pagination Payments Performance Production Rack Rails 4.2 Rails 5.0 Rails 5.1 Rails 5.2 Rails 6 Rails 7 Rails 7.1 Rails 7.2 Rails 8 Rails Engines React Native Refactoring Routes Ruby Search Security Servers Sharing SQL Testing Timezones Turbo Turbolinks Upgrading Views VueJS Webhooks Webpacker

Learn Ruby on Rails, Javascript, Hotwire, Turbo, Stimulus.js, PostgreSQL, MySQL, Ubuntu, and more with GoRails tutorials.

Twitter GitHub

Solutions

  • Ruby on Rails Tutorials
  • Rails Learning Path
  • Rails Courses
  • Rails SaaS Template
  • Deploy Ruby on Rails
  • GoRails Open Source
  • Ruby on Rails Tools
  • Ruby on Rails Jobs

Support

  • Pricing
  • Teams
  • Testimonials
  • Help

Company

  • About Us
  • Blog
  • Remote Ruby Podcast

Legal

  • Privacy Policy
  • Terms of Service

© 2025 GoRails, LLC. All rights reserved.

Proudly built with Jumpstart and hosted with Hatchbox and DigitalOcean.