aboutsummaryrefslogtreecommitdiffstats
path: root/railties/doc/guides/actioncontroller/introduction.txt
blob: 35540bbc098cb83af813ba312ce2b1c499bce9ca (plain) (blame)
1
2
3
4
5
6
7
== What does a controller do? ==

Action Controller is the C in MVC. After routing has determined which controller to use for a request, your controller is responsible for making sense of the request and producing the appropriate output. Luckily, Action Controller does most of the groundwork for you and uses smart conventions to make this as straight-forward as possible.

For most conventional RESTful applications, the controller will receive the request (this is invisible to the developer), fetch or save data from a model and use a view to create HTML output. If your controller needs to do things a little differently, that's not a problem, this is just the most common way for a controller to work.

A controller can thus be thought of as a middle man between models and views. It makes the model data available to the view so it can display it to the user, and it saves or updates data from the user to the model.