# Ruby on Rails

## Sustainable productivity for web-application development

# Ruby on Rails guides

| This page is the result of ongoing Rails Guides hackfest and a work in progress.

| Guides marked with this icon are currently being worked on. While they might still be useful to you, they may contain incomplete information and even errors. You can help by reviewing them and posting your comments and corrections at the respective Lighthouse ticket.

## Start Here

Everything you need to know to install Rails and create your first application.

## Models

This guide covers how you can use Active Record migrations to alter your database in a structured and organized manner.

This guide covers all the associations provided by Active Record.

| Lighthouse Ticket

This guide covers the find method defined in ActiveRecord::Base, as well as named scopes.

## Views

This guide covers the basic layout features of Action Controller and Action View, including rendering and redirecting, using `content_for` blocks, and working with partials.

| Lighthouse Ticket

Guide to using built in Form helpers.

## Controllers

This guide covers the user-facing features of Rails routing. If you want to understand how to use routing in your own Rails applications, start here.

This guide covers how controllers work and how they fit into the request cycle in your application. It includes sessions, filters, and cookies, data streaming, and dealing with exceptions raised by a request, among other topics.

| Lighthouse Ticket

This guide covers the three types of caching that Rails provides by default.

## Digging Deeper

| Lighthouse Ticket

This is a rather comprehensive guide to doing both unit and functional tests in Rails. It covers everything from “What is a test?” to the testing APIs. Enjoy.

This guide describes common security problems in web applications and how to avoid them with Rails.

This guide describes how to debug Rails applications. It covers the different ways of achieving this and how to understand what is happening "behind the scenes" of your code.

| Lighthouse Ticket

This guide covers ways to analyze and optimize your running Rails code.

This guide covers how to build a plugin to extend the functionality of Rails.

Authors who have contributed to complete guides are listed here.

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License