浏览 1339 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-03-16
最后修改:2009-03-17
Rails按照模型、视图、控制器(即MVC)的架构组织。MVC的优点包括
2.1.1 模型 模型展示应用系统的数据,同时操纵这些数据的规则。也可以说,模型主要是用来管理和相关数据库表的交互规则。在多数情况下,数据库中的一个表关联到应用中的一个模型。应用中的商业逻辑大部分集中在模型中。 2.1.2 视图 视图展示应用系统的用户界面。在Rails中,视图通常是嵌入了Ruby代码的HTML文件,这些Ruby代码执行页面相关的数据显示任务。视图将数据提交给浏览器,或者其他发出请求的应用系统。 2.1.3 控制器 控制器将模型和视图胶合在一起,在Rails中,控制器响应来自web浏览器的请求,询问模型得到数据,然后将数据传递给试图。 2.2 Rails的部件 Rails提供完整的建立Web应用的部件,包括
2.1.1 Action Conroller Action Controller是Rails应用中管理控制器的组件。Action Controller处理Rails的输入请求,抽取出参数分发给相应的处理功能(Action)。Action Controller提供的服务包括会话管理,模板渲染和重定向管理。 2.2.2 Action View Action View管理Rails的视图,默认提供HTML和XML两种格式的输出。Action view管理模板渲染,包括嵌套模板和子模板,同时也包括内置的AJAX支持。 2.2.3 Active Record Active Record是Rails的模型基础。Active Record被设计成数据库无关,它基于CRUD功能,具备先进的查找能力,和模型关联的描述能力。 2.2.4 Action Mailer Action mailer是提供e-mail服务的构件,你可以使用Action Mailers来发送邮件,这些邮件可以使用灵活的模板,或者接收和处理外来的邮件。 2.2.5 Active Resource Active Resources是业务对象和REST风格Web服务的桥梁。它实现REST风格的Web资源和本地对象CRUD的映射。 2.2.6 Railties Railties是Rails的核心代码,它用于生成新的Rails应用,并且将不同的构件牢牢的胶合在Rails应用中。 2.2.7 Active Support Active Support提供大量的应用类扩展和标准Ruby库的扩充。这些代码用于Rails中,包括Rails内核和你的应用软件。 2.3 REST Roy Fielding的博士学位论文《架构风格与基于网络的软件架构设计》通常被看做是REST架构的基石。幸运的是,你不必阅读整个论文来弄懂REST(表述性状态转移)怎样运作,其主要原理可以归纳如下:
例如,对于一个类似这样的Rails请求 DELETE /photos/17 将会被理解为对一个ID为17的图片资源执行一个删除请求。REST是一种自然风格的Web应用架构,Rails将这种风格发扬广大,它通过约定来防止某些REST的复杂性和浏览器怪癖。 如果你想了解REST作为架构风格的更多细节,以下资源比Fielding的论文更加通俗易懂:
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |