Ruby on Rails 入门指南 – wiki基地

Ruby on Rails 入门指南:从零开始构建你的第一个Web应用

Ruby on Rails(简称 Rails)是一个强大的开源Web应用框架,它以其“约定优于配置”(Convention Over Configuration)和“不要重复自己”(Don’t Repeat Yourself, DRY)的哲学,极大地简化了Web开发流程,提高了开发效率。本指南将带你从环境搭建到创建你的第一个Rails应用,助你快速入门。

1. 为什么选择 Ruby on Rails?

  • 开发效率高: Rails 提供了丰富的库和工具,自动化了许多常见的开发任务,让你能够专注于核心业务逻辑。
  • 优雅的语法: 基于 Ruby 语言,代码简洁、可读性强,提升开发体验。
  • MVC 架构: 遵循 Model-View-Controller 设计模式,代码结构清晰,易于维护和扩展。
  • 社区活跃: 拥有庞大而活跃的开发者社区,遇到问题可以方便地找到帮助和资源。
  • 生态系统完善: 拥有丰富的 Gems(Ruby 库),可以轻松集成各种功能。

2. 环境准备

在开始Rails开发之前,你需要确保你的系统上安装了Ruby语言和Rails框架。

2.1 检查 Ruby 版本

首先,在终端或命令行中运行以下命令,检查你是否已安装Ruby及其版本:

bash
ruby -v

Rails 通常需要 Ruby 2.7.0 或更高版本。如果版本过旧或未安装,请继续下一步。

2.2 安装 Ruby

强烈推荐使用Ruby版本管理器来安装和管理Ruby,例如 rbenvRVM。这能让你在不同项目之间轻松切换Ruby版本。这里以 rbenv 为例:

对于 macOS 和 Linux 用户 (推荐使用 rbenv):

  1. 安装 Homebrew (macOS) 或系统依赖 (Linux):
    • macOS: 如果尚未安装 Homebrew,请访问 brew.sh 按照说明安装。
    • Linux (Ubuntu 为例):
      bash
      sudo apt update
      sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libncurses5-dev libffi-dev libgdbm-dev
  2. 安装 rbenv 和 ruby-build:
    bash
    git clone https://github.com/rbenv/rbenv.git ~/.rbenv
    echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc # 或 ~/.zshrc, ~/.bash_profile
    echo 'eval "$(rbenv init -)"' >> ~/.bashrc # 或 ~/.zshrc, ~/.bash_profile
    git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
    exec $SHELL # 重新加载shell配置
  3. 安装最新稳定版 Ruby:
    bash
    rbenv install 3.3.0 # 请访问 ruby-lang.org 查看最新稳定版
    rbenv global 3.3.0
    ruby -v # 验证安装

对于 Windows 用户 (推荐使用 WSL):

在 Windows 上,为了获得最佳的Rails开发体验,推荐使用 Windows Subsystem for Linux (WSL)。

  1. 安装 WSL 和 Ubuntu:
    • 打开 PowerShell (以管理员身份运行) 并执行:wsl --install
    • 按照提示重启计算机。重启后,Ubuntu 将自动安装并提示您设置用户名和密码。
  2. 在 WSL (Ubuntu) 中安装 Ruby:
    • 打开 Ubuntu 终端,然后按照上述 macOS/Linux 的 rbenv 步骤安装 Ruby。

2.3 安装 Rails 框架

Ruby 安装完成后,使用 RubyGems(Ruby 的包管理系统)来安装Rails:

bash
gem install rails

安装完成后,验证Rails版本:

bash
rails -v

你将看到类似 “Rails 8.x.x” 的输出。

3. 创建你的第一个 Rails 应用

现在,一切准备就绪,让我们创建一个新的Rails应用程序。

  1. 创建新应用:
    在你的工作目录下,运行 rails new 命令,后面跟着你的应用名称。默认情况下,Rails会使用SQLite数据库。
    bash
    rails new my_first_app

    这个命令会创建一个名为 my_first_app 的新目录,其中包含了完整的Rails应用程序骨架。

  2. 进入应用目录:
    bash
    cd my_first_app

  3. 启动服务器:
    在应用目录中,启动Rails开发服务器:
    bash
    bin/rails server # 或简写 rails s

    这会启动Puma Web服务器,默认监听 http://localhost:3000

  4. 访问应用:
    打开浏览器,访问 http://localhost:3000。你将看到Rails的欢迎页面,表明你的应用程序已成功运行。

4. 理解 Rails 应用结构 (MVC)

Rails 应用程序遵循 Model-View-Controller (MVC) 架构模式,这是理解Rails工作方式的关键:

  • Model(模型): 负责处理应用程序的数据和业务逻辑。它与数据库交互,执行数据验证、关联等操作。
  • View(视图): 负责数据的展示。通常是 HTML、CSS 和 JavaScript 文件,用于呈现用户界面。
  • Controller(控制器): 负责处理用户请求,与模型交互获取数据,然后选择合适的视图来响应用户。

5. 使用 Scaffold 快速生成功能

Rails 的“Scaffolding”(脚手架)功能可以极大地加速开发。它能快速生成一个资源的模型、视图、控制器以及数据库迁移文件,提供基本的 CRUD(创建、读取、更新、删除)功能。

让我们创建一个简单的“文章”资源:

  1. 生成 Scaffold:
    my_first_app 目录下,运行:
    bash
    bin/rails generate scaffold Article title:string content:text

    这个命令会生成 Article 模型(包含 titlecontent 属性)、对应的控制器、视图和数据库迁移文件。

  2. 运行数据库迁移:
    Scaffold 生成了一个数据库迁移文件,用于在数据库中创建 articles 表。你需要运行迁移来更新数据库结构:
    bash
    bin/rails db:migrate

  3. 访问 Scaffold 生成的页面:
    确保Rails服务器仍在运行。打开浏览器,访问 http://localhost:3000/articles。你将看到一个功能齐全的页面,可以创建、查看、编辑和删除文章。

6. 下一步

恭喜你!你已经成功安装了 Ruby on Rails,创建了第一个应用程序,并使用Scaffold快速生成了功能。这仅仅是Rails精彩世界的开始。你可以继续学习:

  • Rails 指南: 官方的 Ruby on Rails Guides 是学习Rails的最佳资源。
  • 路由 (Routing): 深入了解如何定义 URL 路径和控制器动作之间的映射。
  • 模型关联 (Model Associations): 学习如何建立不同模型之间的关系(例如,一篇文章可以有多个评论)。
  • 表单 (Forms): 学习如何创建和处理用户输入表单。
  • 认证和授权 (Authentication & Authorization): 为你的应用添加用户登录和权限管理功能。

祝你在Rails的开发旅程中一切顺利!

滚动至顶部