📜  Ruby on Rails-框架

📅  最后修改于: 2020-10-20 05:25:15             🧑  作者: Mango


框架是为您编写大部分应用程序的程序,程序集和/或代码库。使用框架时,您的工作是编写应用程序的各个部分,以使其能够执行所需的特定操作。

着手编写Rails应用程序时,撇开配置和其他家务琐事,您必须执行三个主要任务-

  • 描述和建模应用程序的域-域是应用程序的整体。域可以是音乐商店,大学,约会服务,地址簿或硬件清单。因此,在这里您必须弄清楚其中的内容,该宇宙中存在的实体以及其中的项目之间如何关联。这等效于对数据库结构进行建模以保留实体及其关系。

  • 指定在该域中可能发生的事情-域模型是静态的;您必须使其动态。可以将地址添加到地址簿中。乐谱可以从音乐商店购买。用户可以登录约会服务。学生可以在大学注册课程。您需要确定域元素可以参与的所有可能的方案或操作。

  • 选择和设计域的公共可用视图-此时,您可以开始使用Web浏览器术语进行思考。一旦确定您的域中有学生,并且他们可以注册课程,就可以想象一个欢迎页面,注册页面和确认页面等。这些页面或视图中的每一个都向用户显示了事情的发展。站在某个点上。

基于以上三个任务,Ruby on Rails处理了一个Model / View / Controller(MVC)框架。

Ruby on Rails MVC框架

M奥德尔V IEWÇontroller原则分歧的应用程序的工作分成三个独立而又密切的合作子系统。

型号(ActiveRecord)

它维护对象与数据库之间的关系,并处理验证,关联,事务等。

该子系统在ActiveRecord库中实现,该库提供了关系数据库中的表与操作数据库记录的Ruby程序代码之间的接口和绑定。 Ruby方法名称是根据数据库表的字段名称自动生成的。

查看(ActionView)

它是一种特定格式的数据表示,由控制器决定呈现数据触发。它们是基于脚本的模板系统,例如JSP,ASP,PHP,并且非常易于与AJAX技术集成。

该子系统在ActionView库中实现,该库是基于嵌入式Ruby(ERb)的系统,用于定义用于数据表示的表示模板。与Rails应用程序的每个Web连接都会导致视图的显示。

控制器(ActionController)

应用程序中用于引导流量的工具,一方面,查询模型中的特定数据,另一方面,将数据组织(搜索,排序,传递消息)为适合给定视图需求的形式。

该子系统是在ActionController中实现的,ActionController是位于ActiveRecord(数据库接口)和ActionView(表示引擎)之间的数据代理。

MVC框架的图形表示

下面给出的是Ruby on Rails Framework的图形表示-

Rails框架

MVC框架的目录表示

假设在Linux上进行了标准的默认安装,则可以这样找到它们-

tp> cd /usr/local/lib/ruby/gems/2.2.0/gems
tp> ls

您将看到包括(但不限于)以下子目录:

  • 动作包
  • activerecord-xyz
  • Rails-xyz

在Windows安装中,您可以找到这样的它们-

tp>cd ruby\lib\ruby\gems\2.2.0\gems
ruby\lib\ruby\gems\2.2.0\gems\>dir

您将看到包括(但不限于)以下子目录:

MVC

ActionView和ActionController在ActionPack下捆绑在一起。

ActiveRecord提供了一系列编程技术和快捷方式,用于处理SQL数据库中的数据。 ActionController和ActionView提供了用于处理和显示该数据的工具。 Rails将它们联系在一起。