Ruby on Rails 教程(第4版)
0推荐 收藏
1.4K阅读
图灵程序设计丛书

Ruby on Rails 教程(第4版)

Michael Hartl (作者) 安道 (译者)
上市销售
学习Rails推荐用书,从头指导初学者如何在短时间内用Rails构建出Web应用
涵盖Ruby、Rails、HTML、CSS、数据库、版本控制、测试和部署等Web应用开发的方方面面,了解Web开发通用原则
本书系统地介绍了如何用Rails构建Web应用。具体内容包括:Ruby、Rails、HTML、CSS、数据库、版本控制、测试以及部署的基本知识。本书大大降低了初学者的门槛,被读者和很多资深程序员誉为“Rails入门圣经”。

收藏本书能做什么?

有情况的时候会收到通知,比如电子书发布等。

纸质书
¥116.1 ¥129.00

出版信息

同系列书

  • HTTP权威指南

    David Gourley   Brian Totty   Marjorie Sayer   Sailu Reddy   Anshu Aggarwal   陈涓   赵振平   译

    本书是HTTP及其相关核心Web技术方面的权威著作,主要介绍了Web应用程序是如何工作的,核心的因特网协议如何...

  • JavaScript高级程序设计(第3版)

    Nicholas C.Zakas   李松峰   曹力   译

    本书是JavaScript超级畅销书的新版。ECMAScript 5 和HTML5在标准之争中双双胜出,使大量...

  • 计算机科学的基础

    Al Aho   Jeff Ullman   傅尔也   译

    本书全面而详细地阐述了计算机科学的理论基础,从抽象概念的机械化到各种数据模型的建立,用算法、数据抽象等核心思想...

  • Java技术手册(第6版)

    Benjamin J Evans   David Flanagan   安道   译

    通过学习本书,你将能够: 掌握最新的语言细节,包括Java 8的变化 使用基本的Java句法学习面向对...

  • 机器学习实战

    Peter Harrington   李锐   李鹏   曲亚东   王斌   译

    机器学习是人工智能研究领域中一个极其重要的研究方向,在现今的大数据时代背景下,捕获数据并从中萃取有价值的信息或...

本书特色

Ruby on Rails是Web应用开发流行框架,高效、功能强大、开源并拥有成熟社区,是上手Web开发的一个不错起点。《Ruby on Rails教程》针对零基础读者,从头指导如何在短时间内用Rails构建出Web应用,自第1版问世以来,得到读者广泛好评。

《Ruby on Rails教程(第4版)》是全面修订过的最新版本,涵盖Rails 5。作者通过多个示例应用,详细介绍Rails的强大功能,不仅能让读者快速了解Rails框架基础并精通Rails开发,还能掌握Web开发的通用原则。

●安装并搭建Rails开发环境,包括预先配置好的云端集成开发环境
●真正理解如何从零构建Rails应用
●学习测试和测试驱动开发
●有效使用模型-视图-控制器模式
●使用REST架构规划应用
●构建静态页面,然后改成动态页面
●掌握每个Rails开发者都要知道的Ruby编程技术
●创建高质量的网站布局和数据模型
●实现注册和身份验证系统,包括数据验证和安全的密码
●更新、显示和删除用户
●在生产环境中使用云存储服务上传图像
●实现账户激活和密码重设功能,包括使用Rails发送电子邮件
●使用Git记录版本变化,在Bitbucket中创建安全的远程仓库
●尽早并经常把应用部署到Heroku上

目录

第 1 章 从零开始,完成一次部署 1
1.1 简介 3
1.1.1 预备知识 3
1.1.2 排版约定 5
1.2 搭建环境 6
1.2.1 开发环境 6
1.2.2 安装Rails 9
1.3 第一个应用 9
1.3.1 Bundler 12
1.3.2 rails server 16
1.3.3 模型-视图-控制器 19
1.3.4 Hello, world! 20
1.4 使用Git做版本控制 23
1.4.1 安装和设置 23
1.4.2 使用Git的好处 24
1.4.3 Bitbucket 25
1.4.4 分支、编辑、提交、合并 28
1.5 部署 32
1.5.1 搭建Heroku部署环境 32
1.5.2 Heroku部署第一步 34
1.5.3 Heroku部署第二步 34
1.5.4 Heroku命令 35
1.6 小结 35
第 2 章 玩具应用 37
2.1 规划应用 37
2.1.1 User模型 40
2.1.2 Micropost模型 40
2.2 Users资源 41
2.2.1 浏览用户相关的页面 42
2.2.2 MVC实战 47
2.2.3 Users资源的不足 52
2.3 Microposts资源 52
2.3.1 概览Microposts资源 52
2.3.2 限制微博的长度 56
2.3.3 一个用户拥有多篇微博 57
2.3.4 继承体系 60
2.3.5 部署这个玩具应用 62
2.4 小结 63
第 3 章 基本静态的页面 65
3.1 创建演示应用 65
3.2 静态页面 69
3.2.1 生成静态页面 69
3.2.2 修改静态页面中的内容 75
3.3 开始测试 77
3.3.1 第一个测试 78
3.3.2 遇红 79
3.3.3 变绿 80
3.3.4 重构 82
3.4 有点动态内容的页面 82
3.4.1 测试标题(遇红) 83
3.4.2 添加页面标题(变绿) 84
3.4.3 布局和嵌入式Ruby(重构) 87
3.4.4 设置根路由 92
3.5 小结 94
3.6 高级测试技术 95
3.6.1 MiniTest报告程序 95
3.6.2 使用Guard自动测试 96
第 4 章 Rails背后的Ruby 102
4.1 导言 102
4.1.1 内置的辅助方法 102
4.1.2 自定义辅助方法 103
4.2 字符串和方法 105
4.2.1 注释 106
4.2.2 字符串 107
4.2.3 对象和消息传送 109
4.2.4 定义方法 111
4.2.5 回顾标题的辅助方法 112
4.3 其他数据结构 113
4.3.1 数组和值域 113
4.3.2 块 116
4.3.3 散列和符号 118
4.3.4 重温引入CSS的代码 122
4.4 Ruby类 123
4.4.1 构造方法 123
4.4.2 类的继承 124
4.4.3 修改内置的类 126
4.4.4 控制器类 128
4.4.5 User类 130
4.5 小结 131
第 5 章 完善布局 133
5.1 添加一些结构 133
5.1.1 网站导航 134
5.1.2 Bootstrap和自定义的CSS 140
5.1.3 局部视图 145
5.2 Sass和Asset Pipeline 150
5.2.1 Asset Pipeline 150
5.2.2 句法强大的样式表 151
5.3 布局中的链接 157
5.3.1 ”联系”页面 158
5.3.2 Rails路由 159
5.3.3 使用具名路由 161
5.3.4 布局中链接的测试 163
5.4 用户注册:第一步 166
5.4.1 Users控制器 166
5.4.2 ”注册”页面的URL 168
5.5 小结 170
第 6 章 用户建模 172
6.1 User模型 172
6.1.1 数据库迁移 173
6.1.2 模型文件 177
6.1.3 创建用户对象 178
6.1.4 查找用户对象 180
6.1.5 更新用户对象 181
6.2 验证用户数据 182
6.2.1 有效性测试 183
6.2.2 存在性验证 184
6.2.3 长度验证 187
6.2.4 格式验证 188
6.2.5 唯一性验证 193
6.3 添加安全密码 198
6.3.1 计算密码哈希值 199
6.3.2 用户有安全的密码 200
6.3.3 密码的最短长度 202
6.3.4 创建并验证用户的身份 203
6.4 小结 205
第 7 章 注册 207
7.1 显示用户的信息 207
7.1.1 调试信息和Rails环境 209
7.1.2 Users资源 212
7.1.3 调试器 216
7.1.4 Gravatar头像和侧边栏 217
7.2 注册表单 222
7.2.1 使用form_for 223
7.2.2 注册表单的HTML 225
7.3 注册失败 228
7.3.1 可正常使用的表单 229
7.3.2 健壮参数 231
7.3.3 注册失败错误消息 233
7.3.4 注册失败的测试 237
7.4 注册成功 240
7.4.1 完整的注册表单 241
7.4.2 闪现消息 242
7.4.3 首次注册 244
7.4.4 注册成功的测试 246
7.5 专业部署方案 248
7.5.1 在生产环境中使用SSL 249
7.5.2 生产环境中的Web服务器 249
7.5.3 部署到生产环境 250
7.6 小结 252
第 8 章 基本登录功能 253
8.1 会话 253
8.1.1 Sessions控制器 254
8.1.2 登录表单 256
8.1.3 查找并验证用户的身份 259
8.1.4 渲染闪现消息 261
8.1.5 测试闪现消息 263
8.2 登录 265
8.2.1 log_in方法 265
8.2.2 当前用户 267
8.2.3 修改布局中的链接 270
8.2.4 测试布局中的变化 274
8.2.5 注册后直接登录 277
8.3 退出 279
8.4 小结 281
第 9 章 高级登录功能 283
9.1 记住我 283
9.1.1 记忆令牌和记忆摘要 283
9.1.2 登录时记住登录状态 288
9.1.3 忘记用户 295
9.1.4 两个小问题 296
9.2 “记住我”复选框 300
9.3 测试“记住我”功能 305
9.3.1 测试“记住我”复选框 305
9.3.2 测试“记住”分支 309
9.4 小结 312
第 10 章 更新、显示和删除用户 314
10.1 更新用户 314
10.1.1 编辑表单 314
10.1.2 编辑失败 320
10.1.3 编辑失败的测试 322
10.1.4 编辑成功(使用TDD) 323
10.2 权限系统 326
10.2.1 必须先登录 327
10.2.2 用户只能编辑自己的资料 331
10.2.3 友好的转向 335
10.3 列出所有用户 338
10.3.1 用户列表 339
10.3.2 示例用户 343
10.3.3 分页 345
10.3.4 用户列表页面的测试 348
10.3.5 使用局部视图重构 350
10.4 删除用户 351
10.4.1 管理员 352
10.4.2 destroy动作 355
10.4.3 删除用户的测试 357
10.5 小结 360
第 11 章 激活账户 362
11.1 Account Activations资源 363
11.1.1 AccountActivations控制器 363
11.1.2 AccountActivations数据模型 364
11.2 账户激活邮件 368
11.2.1 邮件程序模板 368
11.2.2 预览邮件 372
11.2.3 测试电子邮件 375
11.2.4 更新Users控制器的create动作 377
11.3 激活账户 380
11.3.1 通用的authenticated 方法 380
11.3.2 编写激活账户的edit动作 383
11.3.3 测试和重构 386
11.4 在生产环境中发送邮件 391
11.5 小结 394
第 12 章 重设密码 395
12.1 Password Resets资源 397
12.1.1 PasswordResets控制器 397
12.1.2 请求重设密码 399
12.1.3 PasswordResets控制器的create动作 402
12.2 密码重设邮件 404
12.2.1 密码重设邮件程序和模板 404
12.2.2 测试电子邮件 409
12.3 重设密码 410
12.3.1 PasswordResets控制器的edit动作 410
12.3.2 更新密码 412
12.3.3 测试密码重设功能 417
12.4 在生产环境中发送邮件(再谈) 421
12.5 小结 423
12.6 证明超时比较算式 423
第 13 章 用户的微博 425
13.1 Micropost模型 425
13.1.1 基本模型 425
13.1.2 Micropost模型的数据验证 427
13.1.3 User模型和Micropost模型之间的关联 430
13.1.4 改进Micropost模型 433
13.2 显示微博 436
13.2.1 渲染微博 437
13.2.2 示例微博 440
13.2.3 测试资料页面中的微博 445
13.3 微博相关的操作 447
13.3.1 访问限制 448
13.3.2 创建微博 450
13.3.3 动态流原型 457
13.3.4 删除微博 462
13.3.5 微博的测试 465
13.4 微博中的图像 468
13.4.1 基本的图像上传功能 469
13.4.2 验证图像 474
13.4.3 调整图像尺寸 476
13.4.4 在生产环境中上传图像 478
13.5 小结 481
第 14 章 关注用户 484
14.1 Relationship模型 487
14.1.1 数据模型带来的问题(以及解决方法) 487
14.1.2 User模型和Relationship模型之间的关联 490
14.1.3 关系验证 492
14.1.4 我关注的用户 493
14.1.5 关注我的人 496
14.2 关注用户的Web界面 498
14.2.1 示例关注数据 498
14.2.2 数量统计和关注表单 499
14.2.3 我关注的用户列表页面和关注我的用户列表页面 507
14.2.4 关注按钮的常规实现方式 514
14.2.5 关注按钮的Ajax实现方式 517
14.2.6 关注功能的测试 520
14.3 动态流 522
14.3.1 目的和策略 522
14.3.2 初步实现动态流 524
14.3.3 子查询 526
14.4 小结 530
14.4.1 后续学习资源 530
14.4.2 本章所学 531

作者介绍

Michael Hartl,Ruby专家,畅销书作者,教学网站LearnEnough.com创始人之一。因为对Ruby社区的贡献,于2011年被授予Ruby Hero奖。毕业于哈佛学院,获得了加州理工学院物理学博士学位,同时还是Y Combinator创业者项目的毕业生。
  • 印刷好慢
    slashdot  发表于 2017-09-21 19:53:57
    推荐
    • 已经在印刷了,再稍等一下吧。

      张海艳  发表于 2017-09-22 12:56:58
    • @张海艳 这个和去年的电子版《Ruby on Rails 教程(原书第4版)》是啥关系?

      福云  发表于 2017-09-25 19:37:38
    • @福云 是同一本书,这个是纸质版。

      张海艳  发表于 2017-09-26 09:19:15
  • 第五版什么时候出呀?
    imtinge  发表于 2017-10-05 12:12:45
    推荐
    • 第4版还在印刷中...

      福云  发表于 2017-10-19 23:45:56