Ember-CLI-Rails整合指南
1. 项目目录结构及介绍
Ember-CLI-Rails项目通常涉及两个主要部分:Rails应用程序与Ember CLI应用。在典型的项目布局中,你会看到以下结构:
-
Rails App
- 位于项目根目录下,遵循Rails的标准目录结构。包含模型(models)、视图(views)、控制器(controllers)等。
- config
- 存放Rails的各种配置文件,如
config/application.rb
,config/environments/*.rb
等。 - 在
config/environments/production.rb
中可以设置静态文件的缓存控制,包括由Ember CLI生成的资产。
- 存放Rails的各种配置文件,如
- config/initializers/ember_cli.rb
- 这是Ember-CLI-Rails gem的初始化文件,用于配置Ember CLI应用与Rails的集成。
-
Ember CLI App
- 默认情况下,Ember应用与Rails处于同一层级,但路径可以通过gem配置改变。
- 该区域遵循Ember CLI的结构,拥有自己的
app
、public
、tests
等目录,负责前端逻辑与界面构建。 - public/dist
- Ember CLI编译后的产出物存放于此,包括JavaScript、CSS以及HTML索引文件,通过Rails服务给客户端。
2. 项目的启动文件介绍
Rails启动
Rails应用的启动入口是bin/rails
脚本,当你运行rails s
或bundle exec rails server
时,它会被激活。此脚本最终加载config/boot.rb
来设定环境并启动Ruby on Rails服务器。对于Ember-CLI-Rails的整合,其关键在于通过Rails服务器同时也能够服务Ember应用的静态资源。
Ember CLI启动
Ember CLI的启动不是通过Rails直接管理的常规流程。它有自己的命令行工具,即ember serve
,通常在Ember CLI应用目录下执行。然而,通过Ember-CLI-Rails,Ember应用可以在开发模式下与Rails一起运行,或在生产环境中通过特定部署策略集成。
3. 项目的配置文件介绍
-
Gemfile
- 在Rails项目中,Ember-CLI-Rails的依赖通过Gemfile加入,一行
gem "ember-cli-rails"
确保了gem的安装。
- 在Rails项目中,Ember-CLI-Rails的依赖通过Gemfile加入,一行
-
ember-cli-build.js
- 这是Ember CLI的主要构建配置文件,定义了如何编译你的Ember应用,包括加载额外的插件或调整编译设置。
-
config/environment.js
- Ember应用根据环境(例如开发、测试、生产)的配置文件,其中可以定义如API基础URL、开发环境下特殊的配置项,如Mirage模拟数据服务是否开启,这可通过检测RAILS_ENV环境变量实现。
-
config/initializers/ember_cli.rb
- 此文件用于配置Ember CLI与Rails的集成细节,比如指定Ember应用的路径、控制日志输出、配置部署策略等。
以上内容概要介绍了Ember-CLI-Rails项目的核心组件和配置文件,帮助开发者理解和配置这一结合了Rails后台与Ember前端的项目架构。