第一部分 新手入门 1
第1章 安装Rails 3
1.1在Cloud9上安装Rails 4
1.2在虚拟机上安装Rails 6
1.3在Windows上安装Rails 8
1.4在Mac OS X上安装Rails 11
1.5在Linux上安装Rails 12
1.6 Rails版本的选择 14
1.7设置开发环境 14
1.8 Rails和数据库 18
1.9本章所学 19
第2章 牛刀小试 20
2.1新建Rails应用 21
2.2 Hello, Rails! 24
2.3把页面连接起来 30
2.4如果发生错误 33
2.5本章所学 36
2.6练习题 36
2.7清理工作 37
第3章 Rails应用的架构 39
3.1模型、视图和控制器 39
3.2 Rails对模型的支持 42
3.3 Action Pack:视图和控制器 44
第4章 Ruby简介 47
4.1 Ruby是面向对象的语言 47
4.2数据类型 49
4.3控制逻辑 53
4.4组织结构 56
4.5对象的序列化 59
4.6综合应用 59
4.7 Ruby 惯用法 60
第二部分 构建一个应用 63
第5章 Depot应用 65
5.1增量开发 65
5.2 Depot应用的功能 66
5.3开始编写代码 70
第6章 任务A:创建应用 71
6.1迭代A1:实现产品维护功能 71
6.2迭代A2:美化产品列表 78
6.3本章所学 84
6.4练习题 85
第7章 任务B:验证和单元测试 87
7.1迭代B1:验证 87
7.2迭代B2:模型的单元测试 92
7.3本章所学 99
7.4练习题 100
第8章 任务C:实现产品目录页面 101
8.1迭代C1:创建产品目录列表 101
8.2迭代C2:添加页面布局 105
8.3迭代C3:通过辅助方法格式化价格 110
8.4迭代C4:控制器的功能测试 111
8.5迭代C5:缓存局部结果 113
8.6本章所学 115
8.7练习题 116
第9章 任务D:创建购物车 117
9.1迭代D1:查找购物车 117
9.2迭代D2:把产品放入购物车 118
9.3迭代D3:添加按钮 121
9.4本章所学 126
9.5练习题 127
第10章 任务E:更智能的购物车 129
10.1迭代E1:创建更智能的购物车 129
10.2迭代E2:错误处理 135
10.3迭代E3:完成购物车的开发 139
10.4本章所学 143
10.5练习题 143
第11章 任务F:添加少量Ajax代码 145
11.1迭代F1:移动购物车 146
11.2迭代F2:创建基于Ajax的购物车 153
11.3迭代F3:突出显示更改 157
11.4迭代F4:隐藏空购物车 160
11.5迭代F5:通过Action Cable广播更改 164
11.6本章所学 167
11.7练习题 168
第12章 任务G:去结算 169
12.1迭代G1:获取订单 169
12.2迭代G2: Atom订阅源 183
12.3本章所学 186
12.4练习题 186
第13章 任务H:发送电子邮件 189
13.1迭代H1:发送确认邮件 189
13.2迭代H2:应用的集成测试 196
13.3本章所学 201
13.4练习题 201
第14章 任务I:用户登录 203
14.1迭代I1:添加用户 203
14.2迭代I2:用户身份验证 207
14.3迭代I3:访问限制 213
14.4迭代I4:在侧边栏中添加几个管理链接 215
14.5本章所学 219
14.6练习题 219
第15章 任务J:国际化 221
15.1迭代J1:区域的选择 222
15.2迭代J2:在线商店店面的翻译 226
15.3迭代J3:结算页面的翻译 233
15.4迭代J4:添加区域设置选择器 239
15.5本章所学 241
15.6练习题 241
第16章 任务K:部署上线 243
16.1迭代K1:使用Phusion Passenger和MySQL部署 245
16.2迭代K2:通过Capistrano远程部署 252
16.3迭代K3:检查部署后的应用 258
16.4本章所学 260
16.5练习题 261
第17章 Depot应用开发回顾 263
17.1 Rails中的概念 263
17.2记录已完成的工作 266
第三部分 深入探索Rails 267
第18章 Rails内部概览 269
18.1目录结构 269
18.2命名约定 277
18.3本章所学 280
第19章 Active Record 281
19.1定义数据 281
19.2识别和关联记录 286
19.3创建、读取、更新和删除(CRUD) 290
19.4参与监控过程 304
19.5事务 310
19.6本章所学 314
第20章 Action Dispatch和Action Controller 315
20.1把请求分派给控制器 316
20.2处理请求 325
20.3跨请求的对象和操作 337
20.4本章所学 345
第21章 Action View 347
21.1使用模板 347
21.2生成表单 349
21.3处理表单 352
21.4在Rails应用中上传文件 354
21.5使用辅助方法 357
21.6利用布局和局部模板减少维护投入 364
21.7本章所学 372
第22章 迁移 373
22.1创建和运行迁移 373
22.2迁移详解 376
22.3管理表 380
22.4高级迁移技术 385
22.5迁移的问题 388
22.6在迁移外部处理模式 389
22.7本章所学 390
第23章 非浏览器应用 391
23.1使用Active Record开发独立应用 391
23.2使用Active SuppoRT编写库函数 392
23.3本章所学 397
第24章 Rails的依赖 399
24.1使用Builder生成XML 399
24.2使用ERB生成HTML 401
24.3使用Bundler管理依赖 403
24.4使用Rack与Web服务器交互 406
24.5使用Rake自动执行任务 409
24.6 Rails依赖概览 411
24.7本章所学 414
第25章 Rails插件 415
25.1使用Active Merchant处理信用卡 415
25.2使用Haml美化标记 417
25.3分页 420
25.4本章所学 422
25.5在RailsPlugins.org中寻找更多插件 422
第26章 长路漫漫 425
参考书目 427
索引 429