Rails项目结构详解
為什么80%的碼農都做不了架構師?>>> ??
應用程序根目錄
Gemfile:應用程序的依賴關系配置(gem)。修改后通過bundle install應用。
README.rdoc:應用程序說明,建議包括所用的Ruby版本,依賴關系,必要的配置,如何創建數據庫,如何初始化數據庫,如何運行測試套件,需要配置的服務(工作隊列、緩存服務器、搜索引擎等),如何部署,等等。
config/ - 配置文件
config/application.rb和config/environment.rb:定制Rails(覆蓋默認慣例),不常用。
config/database.yml:數據庫配置。
config/routes.rb:URL路由配置。
config/environments/ - 應用程序環境配置
config/environments/development.rb:開發環境配置。
config/environments/test.rb:測試環境配置。
config/environments/production.rb:生產環境配置。
config/initializers/ - 設置應用程序初始值
config/initializers/i18n.rb:國際化支持設置,包括默認區域(locale)設置,所支持的語言。
config/locales/ - 區域設置
config/locales/en.yml:區域en的設置,包括語言(提示信息、模型名稱)、貨幣。
db/ - 數據庫文件
db/schema.rb:自動生成的數據庫結構,包括有哪些數據表、數據表有哪些字段、字段的類型和默認值等。
db/seeds.rb:自定義的種子數據,通過rake db:seed導入數據庫。
db/development.sqlite3:開發用SQLite3數據庫。
db/test.sqlite3:測試用SQLite3數據庫。
db/migrate/:數據遷移(migration)文件,通過rake db:migrate應用,通過rake db:rollback回滾。應用和回滾針對的都是最新的數據遷移(最后創建的)。
app/ - 應用程序主目錄
app/models/:模型文件(model)。
app/views/:視圖文件(view)。
app/controllers/:控制器文件(controller)。
app/helpers/:視圖和控制器的幫助方法文件(helper)。
app/assets/:靜態資源文件。包括CSS(app/assets/stylesheets/)、JavaScript(app/assets/javascripts/)和圖片(app/assets/images/)。
test/ - 測試文件
test/test_helper.rb:測試的幫助方法(helper)。
test/models/:模型的單元測試文件。例如test/models/product_test.rb。
test/controllers/:控制器的功能測試文件。例如test/controllers/products_controller_test.rb。
test/integration/:使用流程的集成測試文件。例如test/integration/user_stories_test.rb。
test/fixtures/:測試夾具文件(fixture)。例如test/fixtures/products.yml。
test/helpers/:測試幫助方法的測試文件。例如test/helpers/products_helper_test.rb
lib/ - 庫文件
不適合放在模型、視圖、控制器中的程序代碼,常用的公共功能等??梢越⒆幽夸?#xff0c;并把功能相關的代碼文件可以放在同一個子目錄下。
lib/tasks/:自定義Rake任務文件。定義后可以用rake db:task_name執行
vendor/ - 第三方庫文件
安裝的插件就放在這里。
public/ - 靜態文件
包括robots.txt、favicon.ico、404.html和500.html等。
log/ - 日志文件
log/development.log:開發環境日志文件。
log/test.log:測試環境日志文件。
bin/ - 可執行文件
常用命令rails、rake、bundle的可執行文件都在這里。
doc/ - 文檔
doc/api/index.html:Rails參考文檔(API reference),通過rake doc:rails生成。
doc/app/index.html:應用程序文檔(源代碼索引),通過rake doc:app生成。
tmp/ - 臨時文件
包括應用程序運行過程中生成的pid、socket、session和緩存文件。
轉載于:https://my.oschina.net/yjwxh/blog/383045
總結
以上是生活随笔為你收集整理的Rails项目结构详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WordPress获取页面文章内容的代码
- 下一篇: Xamarin开发Android笔记:使