刚开始学Rails,因为其“约定大于配置”的特性,让开发人员省了很多事,但是如果不了解这些约定,那么就很可能会迷失在各种魔幻的约定语法中,我个人首先就迷失在了Rails的文件目录中, 使用Rails开发一个新项目的时候,可以直接使用
[img]http://dl.iteye.com/upload/attachment/0070/4710/59079a92-e294-3270-aeb2-342e2053c896.png[/img]
每个目录的作用如下:
/app :主要工作目录,系统行为的代码都放在这个目录下,包括MVC(Models,View,Controller)都在这个目录下,另外,还有assets用来存储CSS、JavaScript和images,helper,mailer等辅助类的存放目录。
/config:存放系统配置文件的目录。
/db :存放DB文件
/doc:存放系统文档
/lib:系统引用的library module集散地,下面有一个assets用来存放引用Module使用使用的assets
/log:系统日志集散地
/public:允许所有人访问的数据集散地
/script:一些工具脚本的集散地
/test:测试目录,当使用rspec做测试时,文件目录替换为spec
/temp:临时文件存放目录
/vender:第三方代码,比如plugins和gems,同样的,其下面也包含了第三方使用的assets
README.rdoc:系统的简要说明
Rakefile:rake命令可以调用的task
Gemfile:当前系统需要的所有gem
Gemfile.lock:用于限定所使用的Gem的版本
config.ru:Rack Middleware的配置文件
.gitignore:存放需要被git忽略的文件列表
rails new first_app
, rails会生成如下的目录结构:
[img]http://dl.iteye.com/upload/attachment/0070/4710/59079a92-e294-3270-aeb2-342e2053c896.png[/img]
每个目录的作用如下:
/app :主要工作目录,系统行为的代码都放在这个目录下,包括MVC(Models,View,Controller)都在这个目录下,另外,还有assets用来存储CSS、JavaScript和images,helper,mailer等辅助类的存放目录。
/config:存放系统配置文件的目录。
/db :存放DB文件
/doc:存放系统文档
/lib:系统引用的library module集散地,下面有一个assets用来存放引用Module使用使用的assets
/log:系统日志集散地
/public:允许所有人访问的数据集散地
/script:一些工具脚本的集散地
/test:测试目录,当使用rspec做测试时,文件目录替换为spec
/temp:临时文件存放目录
/vender:第三方代码,比如plugins和gems,同样的,其下面也包含了第三方使用的assets
README.rdoc:系统的简要说明
Rakefile:rake命令可以调用的task
Gemfile:当前系统需要的所有gem
Gemfile.lock:用于限定所使用的Gem的版本
config.ru:Rack Middleware的配置文件
.gitignore:存放需要被git忽略的文件列表