Ruby on Rails Tutorial: 样例应用指南
本指南将带您了解如何操作位于 https://github.com/railstutorial/sample_app_rails_4.git 的开源项目。这个项目是基于 Michael Hartl 的《Ruby on Rails 教程》创建的,旨在辅助学习者通过实际编码来掌握 Rails 框架。
1. 项目目录结构及介绍
本项目遵循典型的 Rails 应用结构:
-
app 目录: 包含应用程序的主要组件。
- controllers: 控制器处理HTTP请求并管理业务逻辑。
- models: 表示数据库模型,封装数据访问逻辑。
- views: 存放视图模板,用于展示给用户的界面。
- helpers: 辅助方法,帮助视图层更好地渲染。
- mailers: 处理电子邮件发送的类。
-
bin 目录: 包含可执行脚本,如
rails
命令。 -
config 目录: 配置文件的集合。
- database.yml: 数据库连接配置。
- routes.rb: 定义URL到控制器动作的映射。
- application.rb: 应用程序的主配置文件。
-
db: 包括迁移文件(migrations)和种子数据(seeds.rb)。
-
public 目录: 存储静态文件,如CSS、JavaScript和HTML文件,可以直接被浏览器访问。
-
spec 目录: 单元测试和集成测试所在的位置。
-
test 目录: 在较早版本的Rails中,测试文件存放位置,但在本项目中可能不活跃或已被移到
spec
目录。 -
vendor: 通常存放第三方库,本项目可能未用到。
2. 项目的启动文件介绍
虽然没有一个特定的“启动”文件,但启动 Rails 服务器的关键命令通常是通过 bin/rails server
或简写 rails s
执行的。这会运行一个WEBrick服务器(或者如果您已安装其他默认服务器,如Puma或Passenger,则可能会使用它们),使得您的应用可以通过浏览器访问。
3. 项目的配置文件介绍
3.1 database.yml
在 config
目录下的 database.yml
是数据库配置的核心文件。它定义了开发、测试和生产环境中数据库的连接参数,包括数据库名、用户名、密码和主机等。对于本地开发,你需要根据自己的环境设置该文件中的相应环境段落。
3.2 application.rb
application.rb
文件是 Rails 应用的配置中心,它继承自 Rails::Application。在这里可以设置全局配置选项,比如时区、自动加载路径、中间件栈调整等,这些配置影响整个应用的行为。
3.3 routes.rb
此文件定义了应用程序的路由规则,通过 Rails.application.routes.draw
方法展开,它决定了URL到控制器行动的映射关系。例如,定义一个简单的根路由指向主页的控制器动作。
确保在进行任何开发之前,已经正确设置了数据库配置,并且执行了必要的数据库迁移以搭建好应用的基础框架。执行以下命令来完成基本的设置步骤:
bundle install --without production
bundle exec rails db:create db:migrate
bundle exec rails server
以上步骤将安装必要的宝石,创建数据库,执行数据库迁移,并启动服务器,从而为您准备好了开发或学习该应用的环境。