Win a Free Class!

Join our email list for a chance to win

Course Workbook

Ruby on Rails Level 1

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

Ruby on Rails is a young, lean framework focused on developer productivity and happiness. The chief reason for Rails’s growing popularity is the ability to rapidly build, enhance, and scale websites and web services thanks to its cutting-edge design, human-readable syntax, and open ethos of sharing your ideas with others. Working in Rails makes you part of a larger community of forward-thinking programmers advancing the vanguard of web technology.

This book focuses on Rails fundamentals, including a primer on the Ruby programming language. A strong emphasis is placed on best practices and the Model-View-Controller (MVC) paradigm. By the end of the first chapter, you’ll have built a fully-functioning Rails website, and by the end of the book, you will have had a tour through the major components of Rails.

Includes Downloadable Class Files (works on Mac)
ISBN: 978-1-934624-43-2

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
  • Getting started
  • Generating a scaffold
  • Adding content
Adjusting the Templates Created by Scaffolding
  • Formatting Rails
  • Coding simple styles in Rails
  • Coding title bar titles
  • Redirecting the site root page
  • Editing the CSS
  • Adding basic security
Ruby Fundamentals: Classes & Objects
  • Everything in Ruby is an object
  • Defining a class
Section 2
Ruby Fundamentals: Properties & Variables
  • Properties of objects
  • Instance variables & local variables
  • Global variables
Ruby Fundamentals: Manipulating Variables
  • Creating strings in Ruby
  • Simple string methods: changing case
  • Substrings
  • Ranges
  • Comparing strings
  • Regular expressions
Ruby: Sanitizing User Input & Control Structures
  • Sanitizing user input
  • Integers & decimals
  • If/else, unless, & case statements
  • Constants
  • Symbols
Ruby: Collections
  • Arrays: the simplest collections
  • Hashes
  • Enumerators
  • Common iterators
Section 3
MVC: Creating a Model, View, & Controller
  • MVC: model-view-controller
  • Creating a new Rails site for Flix
  • Generating a new model
  • Editing a migration file
  • Populating a database with a seed file
  • Creating a new controller
Integrating the Front-End Designer’s Code
  • Incorporating the designer’s HTML & CSS
  • Incorporating the JavaScript files, images, & fonts
MVC: Controllers & Routing
  • Resourceful vs. non-resourceful routing
  • Assigning instance variables
  • What if the names don’t match?
  • Optional bonus: redirects
MVC: Views
  • Creating a view
  • Adding dynamic data
  • Rendering a partial
  • Optional bonus: rendering a view
Section 4
Forms in Rails: Creating the Form
  • form_tag & form_for
  • Checkboxes, radio buttons, & select boxes
  • Adding a dropdown menu
  • Adding a date selector & submit button
Forms in Rails: Processing & Editing Form Data
  • Making the form work: defining a create method
  • Making an edit form
  • Optional bonus: DRYing up the code even more
Model Creation & Management
  • Generating & rolling back a migration
  • Updating views & controllers to match an updated model
  • Viewing the contents of a database
Exploring & Validating Models
  • Exploring database contents in Rails console
  • Adding an object in Rails console
  • Editing an object in Rails console
  • Adding basic validation to a model
Section 5
Model Methods & Scopes
  • Creating a model method for runtime
  • Scopes
  • Optional bonus: DRYing up the scopes
  • Additional bonus: adding the tab highlight behavior
Model Relationships
  • Creating a model for cast members
  • Adding objects to the cast members model in Rails Console
  • Updating views to include the cast members model
  • Creating a genre model
  • Adding a genre field to the edit form
Model Relationships: Creating a Genre View
  • Creating a genre controller
  • Creating a genre view
  • Improving the look of the genre view
Section 6
Introduction to Testing
  • Fixtures
  • Basic tests: assert & refute
  • Other assert methods
  • The importance of error messages
  • Writing simple tests using fixtures
  • Optional bonus: writing tests using embedded Ruby code
  • Additional bonus: helpers
MVC Tests
  • What to test
  • Testing a custom validation
  • Testing a model method
  • Testing a controller
Gems: Plugins for Ruby
  • What is a gem?
  • Gemfile and Gemfile.lock
  • Installing a new gem
  • Adding sign in & sign out links
  • Adding basic user authentication
  • Removing the ability for users to register themselves
Bonus Material
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

  • Build a Rails project that manages movie information and reviews.

  • Learn the principles of MVC (Model, View, Controller) and model management.

  • Create forms in Rails for easily updating models.

  • Learn how to route requests and display dynamic content
    in custom templates.

  • Use Ruby Gems: plugins that extend the functionality of Rails.

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