📜  Ruby on Rails 2.1-Dir结构

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


当您使用Rails的帮助程序脚本创建应用程序时,它将为您的应用程序创建整个目录结构。 Rails知道在此结构中可以在哪里找到所需的东西,因此您无需提供任何输入。

这是在创建应用程序时由帮助程序脚本创建的目录树的顶级视图。除了版本之间的微小更改外,每个Rails项目将具有相同的结构和相同的命名约定。这种一致性为您提供了巨大的优势。您可以在Rails项目之间快速切换,而无需重新学习项目的组织。

要了解此目录结构,让我们使用在安装一章中创建的演示应用程序。这可以使用简单的helper命令创建,如下所示:

C:\ruby\> rails -d mysql demo

现在,进入演示应用程序的根目录,如下所示:

C:\ruby\> cd demo
C:\ruby\demo> dir

您会发现目录结构如下-

demo/
..../app
......../controller
......../helpers
......../models
......../views
............../layouts
..../config
..../db
..../doc
..../lib
..../log
..../public
..../script
..../test
..../tmp
..../vendor
README
Rakefile

现在让我们解释每个目录的用途。

  • app-它组织您的应用程序组件。它具有保存视图(视图和帮助器),控制器(控制器)和后端业务逻辑(模型)的子目录。

  • app / controllers-控制器子目录是Rails用来查找控制器类的目录。控制器处理来自用户的Web请求。

  • app / helpers -helpers子目录包含用于帮助模型,视图和控制器类的所有帮助器类。它有助于使模型,视图和控制器代码保持小巧,集中和整洁。

  • app / models -models子目录包含用于对存储在我们应用程序数据库中的数据进行建模和包装的类。在大多数框架中,应用程序的这一部分可能变得非常凌乱,繁琐,冗长且容易出错。 Rails使它变得简单!

  • app / view -views子目录保存显示模板,以填充来自我们应用程序的数据,转换为HTML,然后返回用户的浏览器

  • app / view / layouts-包含用于视图的布局的模板文件。这为包装视图的通用页眉/页脚方法建模。在您的视图中,使用 layout:default 定义布局,并创建一个名为default.rhtml的文件。在default.erb内部,调用<%yield%>以使用此布局呈现视图。

  • config-此目录包含应用程序所需的少量配置代码,包括数据库配置(在database.yml中),Rails环境结构(environment.rb)和传入Web请求的路由(routes.rb)。您还可以使用环境目录中的文件来定制三个Rails环境的行为,以进行测试,开发和部署。

  • db-通常,您的Rails应用程序将具有访问关系数据库表的模型对象。您可以使用创建并放置在该目录中的脚本来管理关系数据库。

  • doc-使用rake doc:app生成应用程序文档时,此目录将存储在该目录中。

  • lib-特定于应用程序的库在这里。基本上,任何不属于控制器,模型或助手的自定义代码。该目录在加载路径中。

  • 日志-错误日志转到此处。 Rails创建脚本来帮助您管理各种错误日志。您将找到服务器(server.log)和每个Rails环境(development.log,test.log和production.log)的单独日志。

  • public-与Web服务器的public目录一样,此目录包含不变的Web文件,例如JavaScript文件(public / javascript),图形(public / images),样式表(public / stylesheets)和HTML文件(上市)。这应该设置为您的Web服务器的DOCUMENT_ROOT。

  • 脚本-该目录包含用于启动和管理与Rails一起使用的各种工具的脚本。例如,存在用于生成代码(生成)和启动Web服务器(服务器)的脚本等。

  • 测试-您编写的测试以及这些Rails为您创建的测试都在这里。您将看到一个用于模拟(模拟),单元测试(单元),固定装置(夹具)和功能测试(功能性)的子目录。

  • tmp -Rails使用此目录保存临时文件以进行中间处理。

  • 供应商-第三方供应商提供的库(例如基本Rails发行版之外的安全性库或数据库实用程序)在此处。

除了这些目录,demo目录中还将有两个文件可用。

  • 自述文件-该文件包含有关Rail Application的基本详细信息以及上述目录结构的描述。

  • Rakefile-该文件类似于Unix Makefile,它有助于构建,打包和测试Rails代码。随Ruby安装一起提供的rake实用程序将使用它。