📅  最后修改于: 2020-10-20 05:12:20             🧑  作者: Mango
框架是为您编写大多数应用程序的程序,程序集和/或代码库。使用框架时,您的工作是编写应用程序的各个部分,以使其能够执行所需的特定操作。
着手编写Rails应用程序时,撇开配置和其他家务琐事,您必须执行三个主要任务-
描述和建模应用程序的域-域是应用程序的整体。域可以是音乐商店,大学,约会服务,地址簿或硬件清单。因此,您必须弄清楚其中的内容,该Universe中存在哪些实体以及其中的项目如何相互关联。这等效于对数据库结构进行建模以保留实体及其关系。
指定在此域中可能发生的事情-域模型是静态的。您必须使其动态。可以将地址添加到地址簿中。乐谱可以从音乐商店购买。用户可以登录约会服务。学生可以在大学注册课程。您需要确定域元素可以参与的所有可能的方案或操作。
选择和设计域的公共可用视图-此时,您可以开始使用Web浏览器术语进行思考。一旦确定您的域中有学生,并且他们可以注册课程,您就可以想象一个欢迎页面,注册页面或确认页面等。这些页面或视图中的每一个都向用户显示用户的情况。某一点。
基于以上三个任务,Ruby on Rails处理了一个Model / View / Controller(MVC)框架。
在M奥德尔V IEWÇontroller原则分歧的应用程序的工作分成三个独立而又密切的合作子系统。
维护对象和数据库之间的关系,并处理验证,关联,事务等。
该子系统在ActiveRecord库中实现,该库提供了关系数据库中的表与操作数据库记录的Ruby程序代码之间的接口和绑定。
Ruby方法名称是根据数据库表的字段名称自动生成的。
Active Record还提供基于动态属性的查找器和许多其他帮助器方法,这些方法使数据库交互变得容易且高效。
它是一种特定格式的数据表示,由控制器决定呈现数据触发。它们是基于脚本的模板系统,例如JSP,ASP,PHP,并且非常易于与AJAX技术集成。
该子系统在ActionView库中实现,该库是基于嵌入式Ruby(ERb)的系统,用于定义用于数据表示的表示模板。与Rails应用程序的每个Web连接都会导致视图的显示。
ActionView有助于将演示文稿的详细信息与应用程序的核心业务逻辑分开。
应用程序中用于引导流量的工具,一方面查询模型中的特定数据,另一方面将数据组织(搜索,分类,按摩)成适合给定视图需求的形式。
该子系统是在ActionController中实现的,ActionController是位于ActiveRecord(数据库接口)和ActionView(表示引擎)之间的数据代理。
这里给出了Ruby on Rails Framework的图形表示-
假设在Linux上进行了标准的默认安装,则可以这样找到它们-
tp> cd /usr/local/lib/ruby/gems/1.8/gems
tp> ls
您将看到包括(但不限于)以下内容的子目录-
在Windows安装中,您可以这样找到它们-
C:\>cd ruby\lib\ruby\gems\1.8\gems
C:\ruby\lib\ruby\gems\1.8\gems\>dir
您将看到包括(但不限于)以下子目录:
ActionView和ActionController在ActionPack下捆绑在一起。
ActiveRecord提供了一系列编程技术和快捷方式,用于处理SQL数据库中的数据。 ActionController和ActionView提供了用于处理和显示该数据的工具。 Rails将它们捆绑在一起。