MVC separates application into three components:
- Model: Handles data and business logic (ActiveRecord)
- View: Presents data to users (ERB templates)
- Controller: Coordinates between Model and View, handles requests
The flow: Request → Router → Controller → Model → Controller → View → Response