Save 36% for Black Friday! Save 36% on GoRails for Black Friday! Learn more →
How to build a complete, real-world application from scratch with Ruby on Rails step by step.
A lot of Ruby code is "magic". We'll explain the magic and see how it works using the powerful tools Ruby gives us.
Accept subscription and one-time payments with Stripe in your Rails apps
Expert advice on keeping Rails apps organized and fast.
Cheap, easy hosting for Ruby and Rails apps.
Launch your product business way faster with our SaaS template.
A weekly podcast on web development and building products with Ruby, Rails, Javascript, and more.
A few of the Open Source projects we do at GoRails.
Build a Ruby on Rails app in 48 hours with us.
Help Junior developers get hired by sharing small projects to build their resume with paid work.
Find your next Ruby on Rails Job.
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.
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.
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.
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.
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.
Handling form submissions with Rails teaches us about strong parameters and saving data with our Rails models into the database.
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.
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.
In this video, we will take a look at how to use a few association declaration options to build a couple of has_one associations off of a has_many association in Rails.
Learn how to use Kredis and see it works by implementing a recent searches unique list
Bulk operations like "delete all", "publish all", etc require a little bit of Javascript and a special controller for handling them.
Add onboarding steps for new users and show their completion progress so they can check items off the list, learn how your product works, and get the most out of it.
Adding user avatars is pretty easy using Rails' ActiveStorage feature. We'll be using Devise in this example, but this applies to any user authentication system.
Learn how to pull business logic out of your models and put them into Plain Old Ruby Objects (POROs) in order to clean up your code and keep chunks of business logic in reusable bits.
Learn what a state machine is and how it can help you keep track of everything
Learn how to use the state_machine gem to keep track of objects in your Rails apps
We sort and filter calendar events for simple_calendar 2.0 in a much more friendly manner
Join 87,110+ developers who get early access to new tutorials, screencasts, articles, and more.
We care about the protection of your data. Read our Privacy Policy.