> 本书原文出处:http://rails-practice.com/
> 作者:里克
你好,我是里克,2007年开始从事 Rails 开发工作。《Rails 实践》这本书,是我第一次编写完整的教程,对我来说,它更像是对过往经验的总结。
本书通过一个在线网店程序的开发过程,带领大家了解 Rails 全貌。第一章,我们安装 Ruby 和 Rails 的开发环境,并学习如何设计项目 UI。第二章,我们讲解 Rails 中的资源含义,学习 Rails 如何实现 REST 风格架构,感受 Rails 的快捷开发。第三章,我们关注 Rails 的视图,从页面部分开始了解 MVC 框架。第四章,我们关注数据库部分,讲解 Rails 中的 M。第五章,我们在了解控制器的同时,完成我们网店的购买功能。第六章,我们学习 Rails 中的各种配置,并将它在云服务器上部署运行。
在阅读本书同时,也希望你能阅读其他 Ruby 和 Rails 的教程,博客和新闻,增加知识储备。
> 写出正确的代码是需要理由的。
## 阅读电子版
本书电子版为免费阅读,目前有两个指定的发布地址:
独立域名:[http://rails-practice.com/](http://rails-practice.com/)
极客学院wiki:[http://wiki.jikexueyuan.com/project/rails-practice/](http://wiki.jikexueyuan.com/project/rails-practice/)
## 本书视频
根据本书内容录制的《Rails 实践》系列课程视频,已经在极客学院上线。
- [Ruby on Rails 开发准备](http://www.jikexueyuan.com/course/650.html?hmsr=teacher_liweirails_c650)
- [Rails 中的资源](http://www.jikexueyuan.com/course/741.html?hmsr=teacher_liweirails_c741)
- [Rails 中的视图](http://www.jikexueyuan.com/course/788.html?hmsr=teacher_liweirails_c788)
- Rails 中的模型(录制中)
- Rails 中的控制器(已完成)
- Rails 的配置及部署(已完成)
## 本书读者
本书适合期望使用 Rails 制作 Web 网站的开发者,读者需要具备基础的 HTML,JS 和 CSS 知识,并且了解 Ruby 基本语法。你可以从未使用过 Ruby 和 Rails,这没关系,本书会带领你从安装 Ruby 环境开始,直到完成这个 Rails 项目。
在学习的过程中,我建议读者注册一个 github.com 账号,建立一个学习笔记的代码仓库(Repo)中。
## 本书约定
- 名词首字母大写。
- 英文缩写大写。
- 命令小写。
- 作为名词时,首字母大写,作为命令时 小写。Rails,Ruby 同。
- 专有名词不翻译。
- 专有名词按照约定书写,如 iPhone,iMac,html,js,css,php,jQuery 等等。
- 中文和英文间留有空格。
- 命令行中,当前用户操作使用 `%` 开头,root 用户操作,用 `$` 开头。
## 版权声明
本书的著作权归作者李玮(署名:里克)所有。
你可以:
- 下载、保存以及打印本书
- 网络链接、转载本书的部分或者全部内容,但是必须在明显处提供读者访问本书发布网站的链接
- 在你的程序中任意使用本书所附的程序代码,但是由本书的程序所引起的任何问题,作者不承担任何责任
你不可以:
- 以任何形式出售本书的电子版或者打印版
- 擅自印刷、出版本书
- 以纸媒出版为目的,改写、改编以及摘抄本书的内容
## 读者反馈
本书的文字版在 [http://rails-practice](http://rails-practice),你可以在 [https://github.com/liwei78/rails-practice/issues](https://github.com/liwei78/rails-practice/issues) 页面写下你的问题,也可以留下意见和建议。
## 示例代码
[https://github.com/liwei78/rails-practice-code](https://github.com/liwei78/rails-practice-code)
你可以 `fork` 这份代码到自己的代码仓库(Repo)中,修改并提交,然后向我的代码仓库提交 `Pull Request`,如果修改无异议,我将合并到 master 中。
## 作者介绍
李玮,网名里克,2007年开始从事 Rails 开发,先后经历过社会化搜索引擎 deyeb,华为生活社区百草网,电商平台等开发工作。目前就职于北京迅思科技课程树研发团队。
工作之余,担任长春心语志愿者协会网络顾问,Rails Girls China 编程教练。
## 里克的自习室公众号
![](https://box.kancloud.cn/2015-08-18_55d2e478cc78f.jpg)
## 感谢
感谢我的公司北京迅思科技及 [课程树](http://www.lessontree.cn/) 团队中的每位成员。
感谢所有关注过 [里克的自习室](http://railser.cn/) 的朋友们。
感谢 [Ruby China 社区](https://ruby-china.org)。
- 写在前面
- 第一章 Ruby on Rails 概述
- Ruby on Rails 开发环境介绍
- Rails 文件简介
- 用户界面(UI)设计
- 第二章 Rails 中的资源
- 应用 scaffold 命令创建资源
- REST 架构
- 深入路由(routes)
- 第三章 Rails 中的视图
- 布局和辅助方法
- 表单
- 视图中的 AJAX 交互
- 模板引擎的使用
- 第四章 Rails 中的模型
- 模型的基础操作
- 深入模型查询
- 模型中的关联关系
- 模型中的校验
- 模型中的回调
- 第五章 Rails 中的控制器
- 控制器中的方法
- 控制器中的逻辑
- 第六章 Rails 的配置及部署
- Assets 管理
- 缓存及缓存服务
- 异步任务及邮件发送
- I18n
- 生产环境部署
- 常用 Gem
- 写在后面