Ruby on Rails Demos-n-Deets
2023 Edition
Demos
Project Setup
- Development Environment Setting Up a Computer for Rails-based Web Development
- Windows Subsystem for Linux Setting Up WSL and the Windows Terminal
- Running Apps Initializing and Executing the Demo Apps
- New Projects Generating and Configuring a New Rails Web App
Webpage Basics
- Webpages Adding a Page to the App
- Tables Adding a Table to a Page
- Titles Customizing the Title Metadata Shown in Browser Tabs
- Images Adding an Image to a Page
- Root Routes Setting the Root Page of the App
- Internal Links Hyperlinking to a Page within the App
- External Links Hyperlinking to an External Website
Model Basics
- Model Classes Creating a Model Class and Seeding the Database
- Index Pages Displaying Multiple Model Objects
- Show Pages Displaying Individual Model Objects
- Validation Helpers Validate Data for Model Attributes
Forms and Actions for Models
- New/Create Forms Creating and Saving New Model Objects with Forms
- Edit/Update Forms Updating Model Objects with Forms
- Destroy Actions Deleting Model Records
- Form Partials Refactoring New and Edit Forms Into a Single Form
Model Associations
- One-to-Many Associations Creating a One-to-Many Association between Model Classes
- Nested-Resource Pages Creating Pages and UI Features for CRUDing Model Classes with a One-to-Many Association
- Many-to-Many Associations Creating a Many-to-Many Association between Model Classes
- Association-Link Checkboxes Creating Association Links between Model Objects with Checkboxes
Authentication
- Authentication Adding User Authentication with Devise
- Resource Ownership Restricting Write-Access to Owned Resources
Testing
Deets
Prerequisite Technologies
- Unix How to Use the Unix Shell Command-Line
- Ruby Helpful Resources for Learning the Ruby Programming Language
- HTML Some Basic HTML Elements Used in the Demos
Web Development with Rails
- MVC How Rails Applies the Model-View-Controller Pattern to Process Browser Requests
- ERB How Embedded Ruby Is Used to Render HTML
- Validation Helpers Further information on pre-defined helpers to validate data for model attributes
- Flash Notifications How Sessions and the Flash Are Used to Display Notification Messages
- Navbar Using Bootstrap to Implement a Navbar