`
ice-cream
  • 浏览: 328241 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

关于Rails的目录结构

阅读更多

下面是一个Rails项目通常的目录结构

 

├─app             
│ ├─controllers       
│ ├─helpers
│ ├─models
│ └─views
│   ├─admin
│   ├─layouts
│   ├─login
│   ├─search
│   └─store
├─components
├─config
│ └─environments
├─coverage
├─db
│ └─migrate
├─doc
│ └─app
│   ├─classes
│   └─files
│     ├─app
│     │ ├─controllers
│     │ ├─helpers
│     │ └─models
│     └─doc
├─lib
│ └─tasks
├─log
├─nbproject
│ └─private
├─public
│ ├─images
│ ├─javascripts
│ └─stylesheets
├─script
│ ├─performance
│ └─process
├─test
│ ├─fixtures
│ │ └─performance
│ ├─functional
│ ├─integration
│ ├─mocks
│ │ ├─development
│ │ └─test
│ ├─performance
│ └─unit
│   └─performance
├─tmp
│ ├─cache
│ ├─pids
│ ├─sessions
│ └─sockets
└─vendor
  └─plugins

 

下面来解释这些目录的含义

  app:Model,View,Controller都在这个目录下,对应的有子目录,我们大部分的工作都在这里进行。

  Components:可复用的组件都放在这里。

  Config:数据库链接等的配置信息。

  Coverage:这个不是Rails自己的目录,是我们在前面测试时安装的测试覆盖率工具的目录。

  Db:存放DB结构(Schema)的信息。

  Doc:存放文档,我们前面生成过一次depot项目的文档,都在这里面。

  Lib:存放共享的代码。

  Log:我们的项目的日志信息,里面有development.log,production.log,server.log,test.log,我们在开发时的信息都写在development.log里,而测试时的log都写在test.log里。

  Nbproject:这个不是Rails的目录,是我们前面用NetBeans创建depot项目的时候生成的。

  Public:可以从Web访问的目录,如果我们在浏览器的地址栏里直接输入:http://localhost:3003/那么看到的就是这里的index.html页面。另外,我们前面也把一些css文件放在了这里的stylesheet目录里。

  Script:Rails用到的脚本,有一些我们可能已经用过了,比如:generate,process,performance。

  Test:Model测试,功能测试,测试用的数据等等,我们前面在这个目录下已经写了很多代码了。

  Server:运行WEBrick服务器,我们前面在depot项目里已经使用了。

  Vendor:存放第三方的代码。

下面再主要说说Script目录下的脚本,主要的脚本有:

  Benchmarker:对比多个方法的性能。

  Breakpointer:断点,能够让你和Rails应用程序交互。

  Console:让你能够使用irb命令和rails应用程序交互。

  Destroy:移除generate生成的文件。

  Generate:代码生成器,能够生成Controller,Mailer,Model,Web服务等。你还可以从Rails的网站上下载一些扩展的生成器模块。

  Profiler:对你的程序进行性能测试,使用方面前面的随笔也已经介绍过了。

  Runner:可以使我们代码中的方法脱离Web的上下文环境来运行。

分享到:
评论
1 楼 kongzimengsheng1 2009-10-23  
 

相关推荐

    Ruby on Rails所构建的应用程序基本目录结构总结

    当使用rails new appname生成Rails应用后,我们可以通过tree来查看Rails应用的目录结构: 目录结构 应用程序目录下会有app、config、db、doc、lib、log、public、script、test、tmp和vendor等11个目录和config.ru、...

    使用Aptana+Rails开发Rails Web应用(中文)

    Rails项目创建后,Aptana会自动生成基础的目录结构,包括app、config、db、lib等关键文件夹。在app目录下,你可以找到views、controllers、models等子目录,它们分别对应视图、控制器和模型三个核心组件。 接下来,...

    Ruby on Rails安装指南(Ruby 1.8.6+Rails 2.0.2)

    * 初始化目录结构和基本文件 知识点5:启动 Mongrel 服务器 * 启动 Mongrel 服务器 * 设置服务器端口(默认为 3000) 知识点6:测试 Rails 应用程序 * 打开 IE 测试 Rails 应用程序 * 查看 Rails 主界面 通过...

    Rails

    压缩包子文件的文件名称 "Ruby on Rails.pptx" 提示可能是一个关于Rails的PowerPoint演示文稿,其中可能涵盖了Rails的基础概念、安装步骤、主要组件介绍、开发流程、最佳实践,以及可能的示例代码和案例研究。...

    Rails 101 入门电子书

    - 更新数据库结构。 - 实现逻辑处理。 #### 十二、练习作业5-实作简单的Account后台机制 - **目标**: - 构建用户账户后台。 - **实现过程**: - 显示用户的Group列表。 - 显示用户的Post列表。 - 排序优化: ...

    Rails3常用命令行命令

    这会生成一个包含所有必要文件和目录结构的新Rails项目。接下来,你可以通过以下命令进入Rails的控制台,也称为Console: ```bash rails c 或者 rails console ``` 在控制台中,你可以直接操作应用的数据模型和...

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    - **结构**:新项目将包含默认的目录结构,如`app`、`config`、`db`等,分别用于存放应用程序代码、配置文件、数据库迁移脚本等。 #### 四、启动Rails服务器 - **命令**:在项目根目录下运行`rails server`即可...

    rails2.3.2

    描述中的 "ruby and rails 的框架rails-2.3.3.zip" 提到的是 Rails 的另一个版本 2.3.3,尽管与标题中的版本号不完全匹配,但我们可以推断这是关于 Rails 2.3.x 系列的讨论。这个压缩包很可能包含了 Rails 框架的源...

    rails2-sample

    从给定的文件信息来看,我们正在探讨的是一本关于Ruby on Rails的书籍,书名为《Simply Rails2》,作者是Patrick Lenz。本书旨在为初学者提供深入理解Ruby on Rails框架的指南,从基础概念到高级主题均有涵盖,是...

    rails 项目起步示例

    在Rails项目中,我们首先需要了解的是项目的目录结构。一个标准的Rails应用会包含以下关键部分: 1. **app**:应用程序的核心,包括模型(models)、视图(views)和控制器(controllers)。模型负责业务逻辑和数据...

    rails指南 中文版

    12. **Migrations**:Rails的迁移机制允许开发者通过Ruby代码来管理数据库结构的变化,使得数据库版本控制变得简单。 学习Rails指南中文版,开发者将全面了解Rails的各个方面,包括基础概念、核心组件、最佳实践...

    Rails相关电子书汇总

    标题 "Rails相关电子书汇总" 暗示了这个压缩包包含了关于Ruby on Rails框架的电子书籍资源。Ruby on Rails,通常简称为Rails,是一个基于Ruby语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,以...

    rails查询学习笔记

    在"Winkee_TreeView"这个文件名中,"TreeView"通常是指一种数据展示方式,可能在这里指代的是Rails中如何处理和展示层次结构数据,比如分类、目录或者层级关系的数据。这可能涉及到ActiveRecord的has_many :through...

    component base rails applications

    本书《Component-Based Rails Applications》主要介绍了如何使用Rails引擎(Rails Engine)进行基于组件的Rails应用开发,以及如何对应用程序的大型模块进行拆分和模块化。以下是书中一些核心知识点的详细说明: 1....

    Ruby on Rails源代码

    10. **Scaffold**:Rails的scaffold生成器提供了一个快速创建CRUD(创建、读取、更新、删除)功能的基础结构。源代码展示了scaffold生成的文件结构,帮助理解其工作方式。 通过对Ruby on Rails的源代码进行深入研究...

    Ruby on Rails Tutorial Learn Rails by Example 的源代码

    在`sample_app`中,你可以看到如何组织代码以符合Rails的约定,如目录结构、控制器、模型和视图的创建。 2. **Gemfile和依赖管理**:在项目根目录下,`Gemfile`定义了项目所依赖的Ruby库(Gems)。通过`bundle ...

    关于rails的services层

    通过这种方式,我们可以利用Rails的初始化过程来管理和组织服务层,使其成为应用程序结构的一部分。服务对象不仅有助于提升代码的可维护性和测试性,还能使我们的应用更符合单一职责原则(SRP),降低组件之间的耦合...

    rails api(文档)

    1. **轻量级结构**:Rails API剥离了Web展示层的组件,如Action View和Asset Pipeline,从而减少了不必要的依赖和加载时间,提高了API服务的响应速度。 2. **更好的性能**:由于API通常处理的是JSON数据而非HTML,...

    rails 离线安装包

    5. **理解Rails结构**:Rails项目的结构包括`app`、`bin`、`config`、`db`、`lib`、`log`、`public`、`test`和`vendor`等目录。每个目录都有特定的作用,例如`app`包含模型、控制器和视图等;`db`用于数据库相关的...

    中文版rails教程

    3. **路由(Routing)**:Rails的路由系统根据URL映射到特定的控制器和动作,定义了应用的导航结构。 4. **测试驱动开发(Test-Driven Development, TDD)**:Rails鼓励使用TDD,提供了Rspec和Capybara等强大的测试...

Global site tag (gtag.js) - Google Analytics