Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Ruby on Rails
Ruby CSS Other
Branch: 3-0-stable

This branch is 1625 commits ahead, 34567 commits behind master

Use the reference for the mime type to get the format

Before we were calling to_sym in the mime type, even when it is unknown
what can cause denial of service since symbols are not removed by the
garbage collector.

Fixes: CVE-2014-0082
latest commit 857c6ee62c
@rafaelfranca rafaelfranca authored
Failed to load latest commit information.
actionmailer bumping to 3.0.20
actionpack Use the reference for the mime type to get the format
activemodel Fix issue with attr_protected where malformed input could circumvent
activerecord Revert "Merge pull request #9210 from dylanahsmith/3-0-mysql-quote-nu…
activeresource bumping to 3.0.20
activesupport JDOM XXE Protection [CVE-2013-1856]
bin add missing shebang to rails bin. LH [#4885 state:resolved]
ci Remove cruise files
railties bumping to 3.0.20
tasks avoid false positives caused by release candidates
tools Support an extra profile printer arg
.gitignore activerecord/sqlnet.log into gitignore when running with oracle.
.travis.yml Don't notify campfire when the build keeps passing
.yardopts Add .yardopts so YARD can document Rails
Gemfile Update mocha version to 0.13.0 and change requires
RAILS_VERSION bumping to 3.0.20
README.rdoc revises a few link texts
Rakefile cherry picked 05adf52 for 3-0-stable. Original Author: amatsuda
install.rb Add install script for testing gems locally
load_paths.rb This fixes an issue when bundling to a local path (eg. /vendor/bundle).
rails.gemspec Revert "The rails gem doesn't have a lib directory."
version.rb bumping to 3.0.20


Welcome to Rails

Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Control pattern.

This pattern splits the view (also called the presentation) into “dumb” templates that are primarily responsible for inserting pre-built data in between HTML tags. The model contains the “smart” domain objects (such as Account, Product, Person, Post) that holds all the business logic and knows how to persist themselves to a database. The controller handles the incoming requests (such as Save New Account, Update Product, Show Post) by manipulating the model and directing data to the view.

In Rails, the model is handled by what's called an object-relational mapping layer entitled Active Record. This layer allows you to present the data from database rows as objects and embellish these data objects with business logic methods. You can read more about Active Record in its README.

The controller and view are handled by the Action Pack, which handles both layers by its two parts: Action View and Action Controller. These two layers are bundled in a single package due to their heavy interdependence. This is unlike the relationship between the Active Record and Action Pack that is much more separate. Each of these packages can be used independently outside of Rails. You can read more about Action Pack in its README.

Getting Started

  1. Install Rails at the command prompt if you haven't yet:

    gem install rails
  2. At the command prompt, create a new Rails application:

    rails new myapp

    where “myapp” is the application name.

  3. Change directory to myapp and start the web server:

    cd myapp; rails server

    Run with --help for options.

  4. Go to localhost:3000/ and you'll see:

    "Welcome aboard: You're riding Ruby on Rails!"
  5. Follow the guidelines to start developing your application. You can find the following resources handy:


We encourage you to contribute to Ruby on Rails! Please check out the Contributing to Rails guide for guidelines about how to proceed. Join us!


Ruby on Rails is released under the MIT license.

Something went wrong with that request. Please try again.