# MVC架构
Rails是一个MVC框架。
### MVC全名是Model View Controller
是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
- Model(模型)表示应用程序核心(比如数据库记录列表)
- View(视图)显示数据
- Controller(控制器)输入和输出的路由,从页面取数据插入到相关的model,以及从model拿数据渲染相关的view
### Rails中的MVC实现
![mvc](https://box.kancloud.cn/2015-08-23_55d9d7aec46a5.jpg)
看图,Rails的MVC是这样处理一个请求的:
1. 浏览器发出 Web 请求
1. 路由模块将请求信息发送给相应的控制器,由控制器决定如何处理请求;
1. 控制器根据请求处理逻辑,调用相应的模型来完成业务逻辑;
1. 根据实际需求,完成数据的检索或存储;
1. 控制器组织处理信息,调用视图解析从模型返回的数据; 完成页面渲染,返还数据给浏览器。
对于这个过程,暂时大脑里有个概念就可以了。后面我们会继续深入此概念。
- 序
- Chapter 1: 初识Chef
- 一些背景
- Chef vs Puppet
- Chapter 2: Chef应用
- Chef架构
- Chef能做什么
- Chef组件
- Chef环境安装
- chef-server
- opscode-chef
- chef-solo
- Chef实战
- 实战前的必修理论
- 使用Chef
- Chapter 3: Ruby基础
- 对象与方法
- 标识符
- 类与模块
- 数据类型
- 真与假
- 控制语句
- 代码块
- Chapter 4: Chef源码架构
- Rubygems与gem
- bundler
- Chef源码组织
- Chapter 5: Rails基础
- Rails是什么
- MVC架构
- Restful
- Rails组成与项目结构
- Chapter 6: Chef Server WebUI
- Chef Server Webui组织结构
- Chef Rest API
- 参考