Rails有很多独立的模块组成,了解模块间的关系对了解整个框架很有帮助。
Rails包含以下模块:
Action Pack
—-Action Controller
—-Action Dispatch
—-Action View
Action Mailer
Active Model
Active Record
Active Resource
Active Support
Railties
1 Action Pack
Action Pack 是一个独立的gem包括Action Controller、Action View、Action Dispatch。 “MVC”的“VC”部分。
2 Action Controller
Action Controller是Rails中管理Controllers的模块。它主要负责处理收到的请求,提取出请求参数,并转发到目的action。它还提供一些Service服务包括session管理,指定要渲染的模板,转发管理。
3 Action View
Action View管理view。默认能输出HTML和XML,渲染嵌套的模板和partial模板,还内置有AJAX支持
4 Action Dispatch
Action Dispatch 处理web请求的路由并转发到你指定的目的地。
5 Action Mailer
用来发送和接收邮件,可以基于一些灵活的模板发送纯文件和多媒体邮件。
6 Active Model
在Action Pack和对象关系映射gems如Active Record间提供了一个接口。如果你的程序需要,它还允许你使用其它ORM框架替代Active Record。
7 Active Record
Rails程序中所有model都是基于Active Record。它隔离了数据库依赖,实现了基本CRUD操作,高级查找功能,和多个model间的关联。
8 Active Resource
是管理业务对象(business objects)和RESTful web services连接的框架。它通过CRUD语言实现了一种映射远程web-based资源到本地对象的方法。
9 Active Support
Active Support 是在Rails核心代码和你的程序中使用的很多工具类和标准Ruby库扩展的集合。
10 Railties
Rails是创建新的Rails程序和连接不同框架和插件的一些Rails核心代码
分享到:
相关推荐
本书《Component-Based Rails Applications》主要介绍了如何使用Rails引擎(Rails Engine)进行基于组件的Rails应用开发,以及如何对应用程序的大型模块进行拆分和模块化。以下是书中一些核心知识点的详细说明: 1....
在这个开发环境包中,我们拥有Ruby 1.8.7版本和Rails 2.2.3版本,这两个组件构成了一个经典的开发组合。 Ruby 1.8.7是Ruby编程语言的一个早期稳定版本,发布于2010年,提供了许多改进和新特性。在Ruby 1.8.x系列中...
这些组件构成了Rails框架的基础,使得开发者可以高效地编写代码并实现功能丰富的Web应用。 1. **Action Controller**:这是Rails处理HTTP请求的主要部分,它负责路由请求到相应的控制器方法,并将响应返回给用户。...
总之,《敏捷Web开发与Rails》这本书不仅介绍了Rails的基础知识,还深入探讨了许多高级主题,非常适合那些希望深入学习Rails的开发者阅读。通过本书的学习,读者将能够掌握Rails的核心概念和技术栈,并能够构建出高...
8. **Helper方法**:为了保持视图的简洁,Rails允许在helper模块中定义辅助方法,这些方法可以在多个视图中复用,用于复杂的逻辑或格式化输出。 9. **Testing**:RoR提供全面的测试支持,包括Unit Tests、...
- `actionpack-2.2.3.gem`:ActionPack是Rails的一部分,包括路由(Routing)、控制器(Controllers)和视图(Views)等,构成了MVC架构的“C”部分,负责处理HTTP请求并生成响应。 5. **安装Rails 2.2.3**:要...
- Ruby提供了许多内置类,如String、Array、Hash等,它们构成了Ruby语言的基础。 - 这些类都实现了丰富的功能,可以直接用于各种应用场景。 2. **标量对象** - 标量对象如整数、浮点数、布尔值等,是Ruby中最...
这本书是所谓的“Ruby三神书”之一,其他两部分别是《Agile Web Development with Rails》和《Rails Recipes》,这三本书共同构成了RoR开发者的必读书目。 - **作者背景**:本书作者David A. Black是一位世界级的...
3. **activesupport (3.2.3)**:Active Support是Rails的核心工具箱之一,提供了一系列辅助类和模块,用于字符串操作、缓存机制、时间处理等。 4. **builder (3.0.0)**:提供了生成XML文档的能力,这对于构建动态...
这将生成一系列默认的目录和文件,构成Rails应用的基础结构。 3. **目录结构**: 学习Rails的目录结构至关重要,例如`app`目录包含模型、控制器、视图等;`db`用于数据库相关的文件;`config`包含配置文件;`public`...
在“sample_app”中,我们可以看到这一原则的实践,例如,数据库迁移、模型定义和控制器逻辑都是精心设计的,以确保代码的复用和模块化。 在Rails 3中,路由系统是连接URL与控制器之间的重要桥梁。通过`config/...
这些组件共同构成了Rails应用程序的基础结构。 #### 三、核心目录结构详解 下面我们将逐个介绍这些主要目录的作用和它们包含的文件: ##### 1. **app/** - 应用主目录 - **assets/**:存储静态资源如图片、CSS和...
1. **AngularJS**:AngularJS是一个强大的前端框架,它的主要特性包括双向数据绑定、依赖注入、指令系统和模块化。双向数据绑定使得视图与模型之间的数据变化可以自动同步,而无需手动操作。依赖注入则简化了组件间...
总的来说,“community”项目利用Angular提供用户友好的前端体验,MongoDB处理灵活的数据存储,而Rails则搭建起强大的后端系统,共同构成了一个完整的社交网络平台。通过深入研究这些技术,开发者不仅可以学习到如何...
- **特点**:Angular是一个全面的前端开发框架,它不仅提供了一个强大的模板系统,还包括依赖注入、模块化、路由管理等功能。Angular支持TypeScript语言,有助于编写更健壮、易于维护的代码。 - **应用场景**:...
该系统可能由以下几个主要模块构成: 1. 用户模块:用户注册、登录、个人信息管理等功能。此模块通常涉及用户身份验证、密码加密和用户权限控制等技术,如MD5或SHA哈希算法用于存储密码。 2. 商品展示模块:展示...
2. **控制结构**:如条件语句(if/else、case)、循环(while、for、each)以及流程控制语句(break、next、redo、retry)等,这些构成了程序的基本逻辑结构。 3. **函数和方法**:Ruby中,函数和方法是一体化的,...
在线考试系统通常由以下几个核心组件构成: 1. 用户管理模块:包括学生、教师和管理员的注册、登录、权限设置等功能,确保不同角色的操作权限和信息安全性。 2. 考试管理模块:教师可以创建、编辑、发布和管理各类...
Ruby的历史和设计理念部分会介绍Ruby语言的起源、发展以及其设计理念,例如“最小惊喜原则”(Principle of Least Surprise)和“人的体验优于机器的便利”(Humanity over Machinery)。Ruby的设计哲学强调编程的...
【标题】"简单后台模板"所指的是一种用于构建后台管理界面的设计...在实际应用中,开发者还可以结合后端框架(如Node.js、Django、Ruby on Rails等)与数据库(如MySQL、MongoDB、PostgreSQL等)来构建完整的后台系统。