- Ruby on Rails 教程
- Ruby on Rails - 主页
- Ruby on Rails - 简介
- Ruby on Rails - 安装
- Ruby on Rails - 框架
- Ruby on Rails - 目录结构
- Ruby on Rails - 示例
- Ruby on Rails - 数据库设置
- Ruby on Rails - 活动记录
- Ruby on Rails - 迁移
- Ruby on Rails - 控制器
- Ruby on Rails - 路线
- Ruby on Rails - 视图
- Ruby on Rails - 布局
- Ruby on Rails - 脚手架
- Ruby on Rails - AJAX
- Ruby on Rails - 文件上传
- Ruby on Rails - 发送电子邮件
- Ruby on Rails 资源
- Ruby on Rails - 参考指南
- Ruby on Rails - 快速指南
- Ruby on Rails - 资源
- Ruby on Rails - 讨论
- 红宝石教程
- 红宝石教程
Ruby on Rails - 框架
框架是一个程序、一组程序和/或代码库,可以为您编写大部分应用程序。当您使用框架时,您的工作是编写应用程序的各个部分,使其执行您想要的特定操作。
当您开始编写 Rails 应用程序时,抛开配置和其他杂务,您必须执行三个主要任务 -
描述和建模您的应用程序的域- 域是您的应用程序的宇宙。该域可以是音乐商店、大学、约会服务、地址簿或硬件库存。所以在这里你必须弄清楚它里面有什么,这个宇宙中存在什么实体以及其中的项目如何相互关联。这相当于对数据库结构进行建模以保留实体及其关系。
指定该域中可能发生的情况- 域模型是静态的;你必须让它充满活力。地址可以添加到地址簿中。乐谱可以从音乐商店购买。用户可以登录约会服务。学生可以在大学注册课程。您需要确定域元素可以参与的所有可能场景或操作。
选择并设计该域的公开可用视图- 此时,您可以开始用 Web 浏览器术语进行思考。一旦您确定您的域中有学生,并且他们可以注册课程,您就可以设想一个欢迎页面、注册页面和确认页面等。每个页面或视图都会向用户展示如何进行操作站在某一点上。
基于以上三个任务,Ruby on Rails 处理模型/视图/控制器(MVC)框架。
Ruby on Rails MVC 框架
模型视图控制器原理将应用程序的工作划分为三个独立但紧密协作的子系统。
模型(ActiveRecord)
它维护对象和数据库之间的关系,并处理验证、关联、事务等。
该子系统在 ActiveRecord 库中实现,该库提供关系数据库中的表与操作数据库记录的 Ruby 程序代码之间的接口和绑定。Ruby 方法名称是根据数据库表的字段名称自动生成的。
视图(动作视图)
它是以特定格式呈现数据,由控制器决定呈现数据而触发。它们是基于脚本的模板系统,如 JSP、ASP、PHP,并且非常容易与 AJAX 技术集成。
该子系统在 ActionView 库中实现,该库是一个基于嵌入式 Ruby (ERb) 的系统,用于定义数据呈现的呈现模板。每个与 Rails 应用程序的 Web 连接都会导致视图的显示。
控制器(动作控制器)
应用程序中引导流量的工具,一方面查询模型中的特定数据,另一方面将数据组织(搜索、排序、消息传递)为适合给定视图需求的形式。
该子系统在 ActionController 中实现,它是位于 ActiveRecord(数据库接口)和 ActionView(表示引擎)之间的数据代理。
MVC框架图解
下面给出的是 Ruby on Rails 框架的图示 -
MVC框架的目录表示
假设在 Linux 上进行了标准的默认安装,您可以像这样找到它们 -
tp> cd /usr/local/lib/ruby/gems/2.2.0/gems tp> ls
您将看到子目录,包括(但不限于)以下内容 -
- 动作包-xyz
- 活动记录-xyz
- 轨道 xyz
通过 Windows 安装,您可以像这样找到它们 -
tp>cd ruby\lib\ruby\gems\2.2.0\gems ruby\lib\ruby\gems\2.2.0\gems\>dir
您将看到子目录,包括(但不限于)以下内容 -
ActionView 和 ActionController 在 ActionPack 下捆绑在一起。
ActiveRecord 提供了一系列编程技术和快捷方式来操作 SQL 数据库中的数据。ActionController 和 ActionView 提供了操作和显示该数据的工具。Rails 将这一切联系在一起。