In this course, you'll be doing a whole lot of building, each project a bit more advanced than the previous one. You'll build about a dozen Rails projects from scratch, including one full-featured tutorial that we'll be following along with as we go and a full scale web application of your own. More importantly, you'll learn how to deconstruct a website into its underlying data architecture and then build an application around that. By the end of it all, you'll have the confidence to put up a simple website in under an hour.
In this section, we'll dive right into Rails and get you building from the start so you have an idea of what (and how) you'll learn going forward. We'll get your feet planted in the right spot and your head pointed the right direction.
Let's get acquainted with what this will look like from here on out.
This will give you the chance to build a full Rails app using some of the special tools Rails provides.
We're not just using the Web, we're living it. This lesson will get you up to speed on how.
There's nothing quite like seeing your application on a real website. We'll show you how it's done.
Now that you've gotten your feet wet, it's time to start looking carefully into the foundational pieces of the Rails framework. We'll cover the path of an HTTP request from entering your application to returning as an HTML page to the browser.
The router is the switchboard of your app, telling requests which controller action they're supposed to run.
Controllers are the middle managers of the whole process -- they tell everyone else what to do and take all the credit.
When the controller has figured out which data needs to be displayed, it's the View's job to turn that into some half-decent HTML.
This section covers the back end of Rails, which is the most important part of the framework. You'll learn about databases and go deep into SQL before applying that knowledge to Rails' fantastic Active Record gem.
Data is the core of every major web app and here you'll learn how to speak SQL.
The best way to learn is by practice, so this project will give you plenty of opportunity to apply your new SQL powers (for good).
Active Record is the crown jewel of Rails because it turns all the bare metal database queries (like SQL) into nice clean Ruby methods.
This section gets into some of the areas of web apps that are less glamorous than they are important. Forms are your user's window to interact with your application. Authentication is critical for many applications, and you'll build a couple of auth systems from the ground up.
Half refresher, half expanding your mind, this will bridge the gap between the lowly web form and your server side logic.
To understand the form, you must start from the beginning. We'll start with HTML and then learn how Rails can really help you out.
Learn how to store data in the user's browser and how that is used to sign in the user and keep them signed in across requests.
Now it's starting to get fun! Learn how to do more than just find and show your users... you'll learn how to use relationships between models to greatly expand your abilities and how to build web forms with sufficient firepower to achieve your most ambitious goals.
Learn how to take some of those advanced querying concepts you used in SQL and have Rails do them for you mathemagically.
Dive into some of the more interesting features of associations like special methods and polymorphism.
A brief look at the life-cycle of an Active Record object, from birth to destruction, and how you can hook into that for profit.
Exercise those association muscles to finish up the tutorial like a pro.
Take what you know about forms and put rocket boosters on it. Don't be afraid to make a form for anything.
This final section will take you into some of the more interesting sides of the Rails ecosystem which will help you reach beyond your own app and into the lives of your users via email or harness the powers of other apps via their APIs.
Rails is really just an API itself... learn about APIs and how to turn your app into one
Lots of the power of APIs comes from interfacing with third-party applications, which we'll cover in this lesson.
You don't often think about where your email comes from. Here you'll learn how to send it from your app.
Add email functionality to an existing project. Just don't SPAM, it's frowned upon.
A mash-up of orphan topics like advanced routing, layouts, metaprogramming and design patterns.
There's a pretty popular social networking app you should build. They may have made a movie about it.