# 1.2 搭建環境
就算對經驗豐富的 Rails 開發者來說,安裝 Ruby、Rails,以及相關的所有軟件,也要幾經波折。這些問題是由環境的多樣性導致的。不同的操作系統,版本號,文本編輯器的偏好設置和“集成開發環境”(Integrated Development Environment,簡稱 IDE)等,都會導致環境有所不同。如果你已經在本地電腦中配置好了開發環境,可以繼續使用你的環境。但對于初學者,我更鼓勵使用云端集成開發環境([旁注 1.1](#aside-barrier)中說過),這樣可以避免安裝和配置出現問題。云端 IDE 運行在普通的 Web 瀏覽器中,因此在不同的平臺中表現一致,這對 Rails 開發一直很困難的操作系統(例如 Windows)來說尤其有用。如果你不怕挑戰,仍想在本地開發環境中學習書中的教程,我建議你按照 [InstallRails.com](http://installrails.com) 中的說明搭建環境。[[4](#fn-4)]
## 1.2.1 開發環境
不同的人有不同的喜好,每個 Rails 程序員都有一套自己的開發環境。為了避免問題復雜化,本書使用一個標準的云端開發環境,[Cloud9](https://c9.io)。而且,為了第三版我還和 Cloud9 合作,專為本書量身打造了一個開發環境。這個開發環境預先安裝好了 Rails 開發所需的大多數軟件,包括 Ruby、RubyGems 和 Git(其實,唯有 Rails 要單獨安裝,而且這么做是有目的的,詳情參見 [1.2.2 節](#installing-rails))。這個云端 IDE 還包含 Web 應用開發所需的三個基本組件:文本編輯器,文件系統瀏覽器,以及命令行終端(如[圖 1.1](#fig-ide-anatomy))。云端 IDE 中的文本編輯器功能很多,其中一項是“在文件中查找”的全局搜索功能[[5](#fn-5)],我覺得這個功能對大型 Rails 項目來說是必備的。
圖 1.1:云端 IDE 的界面布局
這個云端開發環境的使用步驟如下:
1. 在 Cloud9 中[注冊一個免費賬戶](https://c9.io/web/sign-up/free);
2. 點擊“Go to your Dashboard”(進入控制臺);
3. 選擇“Create New Workspace”(新建工作空間);
4. 創建一個名為“rails-tutorial”(不是“rails_tutorial”)的工作空間,勾選“Private to the people I invite”(僅對我邀請的人開放),然后選擇表示 Rails 教程的圖標(不是表示 Ruby on Rails 那個圖標),如[圖 1.2](#fig-cloud9-new-workspace) 所示。;
5. 點擊“Create”(創建);
6. Cloud9 配置工作空間完成后,選擇這個工作空間,然后點擊“Start editing”(開始編輯)。
圖 1.2:在 Cloud9 中新建一個工作空間
因為使用兩個空格縮進幾乎是 Ruby 圈通用的約定,所以我建議你修改編輯器的配置,把默認的四個空格改為兩個。配置方法是,點擊右上角的齒輪圖標,然后選擇“Code Editor (Ace)”(Ace 代碼編輯器),編輯“Soft Tabs”(軟制表符)設置,如[圖 1.3](#fig-cloud9-two-spaces) 所示。(注意,修改設置后立即生效,無需點擊“Save”按鈕。)
圖 1.3:讓 Cloud9 使用兩個空格縮進
## 1.2.2 安裝 Rails
前一節創建的開發環境包含所有軟件,但沒有 Rails。[[6](#fn-6)]為了安裝 Rails,我們要使用包管理器 RubyGems 提供的 `gem` 命令,在命令行終端里輸入[代碼清單 1.1](#listing-installing-rails) 所示的命令。(如果在本地系統中開發,在終端窗口中輸入這個命令;如果使用云端 IDE,在[圖 1.1](#fig-ide-anatomy) 中的“命令行終端”輸入這個命令。)
##### 代碼清單 1.1:安裝 Rails,指定版本
```
$ gem install rails -v 4.2.2
```
`-v` 旗標的作用是指定安裝哪個 Rails 版本。你使用的版本必須和我一樣,這樣學習的過程中,你我得到的結果才相同。
- Ruby on Rails 教程
- 致中國讀者
- 序
- 致謝
- 作者譯者簡介
- 版權和代碼授權協議
- 第 1 章 從零開始,完成一次部署
- 1.1 簡介
- 1.2 搭建環境
- 1.3 第一個應用
- 1.4 使用 Git 做版本控制
- 1.5 部署
- 1.6 小結
- 1.7 練習
- 第 2 章 玩具應用
- 2.1 規劃應用
- 2.2 用戶資源
- 2.3 微博資源
- 2.4 小結
- 2.5 練習
- 第 3 章 基本靜態的頁面
- 3.1 創建演示應用
- 3.2 靜態頁面
- 3.3 開始測試
- 3.4 有點動態內容的頁面
- 3.5 小結
- 3.6 練習
- 3.7 高級測試技術
- 第 4 章 Rails 背后的 Ruby
- 4.1 導言
- 4.2 字符串和方法
- 4.3 其他數據類型
- 4.4 Ruby 類
- 4.5 小結
- 4.6 練習
- 第 5 章 完善布局
- 5.1 添加一些結構
- 5.2 Sass 和 Asset Pipeline
- 5.3 布局中的鏈接
- 5.4 用戶注冊:第一步
- 5.5 小結
- 5.6 練習
- 第 6 章 用戶模型
- 6.1 用戶模型
- 6.2 用戶數據驗證
- 6.3 添加安全密碼
- 6.4 小結
- 6.5 練習
- 第 7 章 注冊
- 7.1 顯示用戶的信息
- 7.2 注冊表單
- 7.3 注冊失敗
- 7.4 注冊成功
- 7.5 專業部署方案
- 7.6 小結
- 7.7 練習
- 第 8 章 登錄和退出
- 8.1 會話
- 8.2 登錄
- 8.3 退出
- 8.4 記住我
- 8.5 小結
- 8.6 練習
- 第 9 章 更新,顯示和刪除用戶
- 9.1 更新用戶
- 9.2 權限系統
- 9.3 列出所有用戶
- 9.4 刪除用戶
- 9.5 小結
- 9.6 練習
- 第 10 章 賬戶激活和密碼重設
- 10.1 賬戶激活
- 10.2 密碼重設
- 10.3 在生產環境中發送郵件
- 10.4 小結
- 10.5 練習
- 10.6 證明超時失效的比較算式
- 第 11 章 用戶的微博
- 11.1 微博模型
- 11.2 顯示微博
- 11.3 微博相關的操作
- 11.4 微博中的圖片
- 11.5 小結
- 11.6 練習
- 第 12 章 關注用戶
- 12.1 “關系”模型
- 12.2 關注用戶的網頁界面
- 12.3 動態流
- 12.4 小結
- 12.5 練習