Win a Free Class!

Join our email list for a chance to win

Course Workbook

Ruby on Rails Level 2

Ruby on rails level2 2x
eBook $49
Print $65
Print + eBook $75
Teacher Discounts

Once you’ve got your feet wet with Ruby on Rails Level 1, this book provides excellent next steps for further learning. Complex use cases require complex solutions, and the Rails framework delivers powerful tools for solving them. This book demonstrates how to build an ecommerce website, complete with an administrative backend, a real-world product/cart/order data model, AJAX, API integrations, email order confirmations, and finally deployment and hosting using industry standard tools: Heroku and Amazon Web Services. Along the way you’ll also pick up some advanced nuances of Ruby that will help reduce the amount of code you have to write.

Includes Downloadable Class Files (works on Mac)
ISBN: 978-1-941333-12-9

Download Sample Exercise
Setup & Introduction
Downloading the Class Files
Before You Begin: Installing Ruby on Rails
  • Installing Command Line Tools
  • Installing Homebrew
  • Installing Ruby Version Manager (RVM)
  • Installing Ruby & Rails
Section 1
Setting Up: Do This Before Other Exercises!
  • Setting up your class files
Closures: Blocks, Procs, & Lambdas
  • Blocks
  • Writing methods that work with blocks
  • Procs vs. lambdas
Ruby Fundamentals: Inheritance, Mixins, & Modules
  • Inheritance
  • Overriding a parent class’s method
  • Calling a parent class’s method using super
  • Mixins & modules
Object Introspection
  • The class & superclass methods
  • The ancestors method
  • The is_a? & respond_to? methods
Extending Core Ruby Classes
  • Extending the string class
  • Adding a new method to the string class
Error Handling & Exceptions
  • Handling errors
  • Different types of errors
  • The raise method
Section 2
Getting Started with Active Admin
  • Installing the Active Admin gem
  • Logging in to Active Admin
  • Generating a resource
Customizing Product Images
  • Installing the Paperclip gem
  • Installing the ImageMagick image processor
  • Modifying the form
  • Customizing images
Product Images, SEO-Friendly Slugs, & Markdown
  • Installing the FriendlyId gem
  • Using slugs to create SEO-friendly URLs
  • Remaking the database
  • Using Markdown to make bulleted lists
Customizing Active Admin
  • Customizing the product columns
  • Customizing the filter sidebar
Section 3
Many-to-Many Relationships: Part One
  • The has_one relationship
  • The has_and_belongs_to_many relationship
Many-to-Many Relationships: Part Two
  • The has_many, through relationship
  • Setting quantity
  • Removing items
Adding Price Functionality to the Cart
  • Calculating the subtotal
  • Delegates
  • Fixing the order summary
  • Displaying the number of items in the cart
Advanced Model Relationships: Polymorphic
  • Polymorphic relationships
  • Making the checkout button functional
  • Adding an order model
  • Checking out & emptying the cart
Advanced Model Relationships: Self Joins
  • Self join relationships
  • Displaying related products
Section 4
Updating Quantities & Prices with AJAX
  • Adding an AJAX request
  • Disabling turbolinks
Web Services: Integrating a Third-Party
  • Installing the HTTParty gem
  • Adding Bitcoin total to the order summary
Web Services: Outgoing with JSON, XML, & CSV
  • Converting product info into JSON
  • Creating an XML file
  • Using Active Admin to export CSV
Confirmation Emails & Testing with MailCatcher
  • Installing & configuring MailCatcher
  • Creating a mailer
  • Sending the email
Deployment with Heroku & AWS S3
  • Creating Heroku & Amazon Web Services accounts
  • Adding the gems that Heroku needs
  • Configuring Paperclip to store images on Amazon S3
  • Setting up AWS S3: creating a bucket & security keys
  • Deploying our code to Heroku
  • Sending emails with Heroku’s SendGrid add-on
Bonus Material
The Making of That Nutty Guy: Page Layout
  • Creating the product model, view, & controller
  • Incorporating the designer’s HTML/CSS
  • Fixing the missing images & fonts
The Making of That Nutty Guy: Dynamic Content
  • Adding dynamic data
  • Rendering a partial
  • Validations
User Sign-In with the Devise Gem
  • Installing the Devise gem
  • Alerts
  • User logins
Managing Your Code with Git
  • Creating a new Git repository
  • Tracking changes & adding files
  • Committing code to Git
  • GitHub: pushing your code to the cloud
  • Committing a change to the repository
  • Cloning a repository
Reference Material
Basic Structure of Scaffolding
Features of Noble Desktop eBooks
  • Searchable.
  • Printable.
  • Live text that you can copy and paste.
  • eBook graphics are in color (printed books are black and white).
  • Widely compatible: We provide the most common eBook formats (EPUB, MOBI, & PDF) so you can load them onto the device or app you choose; such as Mac, PC, iPhone, iPad, Kindle, Android, and more.
  • Free updates for the edition you buy. When we make major changes to a book (requiring a new edition), an affordable upgrade option will be available.
  • DRM-free: Files are subtly watermarked with your name and email, but we do not restrict the devices or apps you can use to view our eBooks.
  • Lifetime access to downloads from your account page.
The Best Way to Enjoy Our Books

Our workbooks are meant to be used while you work on your computer. They typically contain step-by-step exercises that walk you through doing tasks on your computer. An ideal setup would be to have the eBook loaded onto a device (like a tablet/smartphone) or on a second computer monitor, so you can read the book as you work on your computer. You can also print the PDF if you prefer.

Which File Format Is Right for You?
  • Ideal for printing.
  • An exact match to the printed book. If the text reflow of an EPUB or MOBI file is confusing please refer to the PDF.
  • PDF is compatible with most devices, but it’s not optimized for small screens. If using a smaller screen you’ll likely want to use the EPUB or MOBI files.
  • The industry standard eBook format which works with all devices, except for the Amazon Kindle. EPUB can be read on Mac, PC, iPhone, iPad, iPod Touch, Nook, Sony Reader, Kobo, Android, and many more.
  • Ideal for smaller screens as the layout reflows to fit the current device (at the type size of your choice).
MOBI (Kindle)
  • Amazon’s format for Kindle devices and Kindle app.
  • Ideal for smaller screens as the layout reflows to fit the current device (at the type size of your choice).
  • Using an iOS Device such as iPhone & iPad? The Kindle app for Apple iOS devices requires a specialized format which we do not support. While our MOBI will work in the Kindle app, it will not render well on iOS devices. We recommend using the EPUB format with Apple’s iBooks app if reading on an iOS device.
Recommended Reading Apps
iPhone, iPad
  • iBooks (EPUB)
Windows PC
Can You Share the eBook or Printouts?

Noble Desktop books are intended for use by you, the owner. They are not intended to be loaned or given to others. The files are subtly watermarked with your name and email, but we do not apply any DRM. You can copy your eBooks to any of your own devices without restriction. You can print the PDF files for your own use, but not to give to others. You cannot sell used eBooks. Ownership is solely yours and cannot be transferred.

Teachers and training centers wishing to print copies for students should email for licensing options and pricing.

How It Works
  • When you buy an eBook for yourself, it will be added into your account. It will be watermarked with your information and is intended for use only by you.
  • You can also purchase eBooks for someone else, such as a friend or colleague. Schools and training centers can purchase eBooks for their students (be sure to apply for educational pricing).
  • When buying eBooks for someone else, you will receive an eBook voucher code to share with them. Send that code to the recipient and they will be able to redeem it. An eBook voucher code can be redeemed once, for the specific book you purchase for them.
  • The recipient of the eBook voucher code will need to log into their Noble Desktop account, or create a free account. In their account they will enter the code (in the My eBooks tab) and the eBook will be added immediately into their account.
  • The recipient receives all the same benefits of Noble Desktop eBooks, which includes lifetime access to download their eBook, as well as free updates to that edition. When the next edition is released, an affordable upgrade option will be available to them.

Examples of What You Learn

  • How to build an ecommerce website
  • Create an administrative backend
  • Use a real-world product/cart/order data model
  • Web Services: Outgoing with JSON, XML, & CSV
  • Confirmation Emails & Testing with MailCatcher
  • Deployment with Heroku & Amazon Web Services
  • And more...

Why Our Books Are Unique

Our books are packed with step-by-step exercises that walk you through projects. You’ll learn by doing exercises, not reading long explanations commonly found in user manuals. The goal is to give you hands-on practice with the program, getting you started quickly with the things that are most important for real life work. Our books are not a replacement for the manual, but manuals aren’t how you learn an app!

eBook $49
Print $65
Print + eBook $75
Teacher Discounts