该书下载自-书部落-分享计算机经典巨著!-www.shubulo.com仅供试看 e Pragmatic Broadview www.broadviewcom.cn programmers Web开发敏捷之道 一应用 Rails进行敏捷web开发,第2版 Agile Web Development with Rails, Second Edition [美] Dave Thomas David Heinemeier Hansson 林芷薰译 透明审校 The Facets of Ruby series RAILS 電子工業出版 SHING HOUSE OF ELECTRONICS INDUSTRY http:llwww.phei.com.cn
;ew 8 www.broad../ew. com.cn eb 第2 Agile Web Development with Rails, Second Edition 美] Dave Thomas David Heinemeier Hansson 林芷 熏译 透明审校 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
该书下载自-书部落-分享计算机经典巨著!-www.shubulo.com!仅供试看^ 译者序 和 Rails一起成长 如果说有什么事情比翻译一本厚达554页的书更费神的话,那就是这本书的第2版 被它的作者们一不幸地—写到了720页,并且其中70%的内容与前一版不同,而译 者还是你。正如本书的作者 Dave Thomas所说,创作这个第2版是一件吃力并且被广泛 低估的工作,因为大部分读者很难想象仅仅时隔18个月之后推出的第2版竟然会有如此 之大的变动。而作为这本书前后两版译者的我,对此感同身受。 真正有趣的是,当 Agile Web Development with Rails(简称 AWDWR)的第1版还在 帮助全世界的 Rails开发者和爱好者学习和使用Rals的时候,为什么这个第2版会以近 乎崭新的面貌如此迅速地登场?答案显而易见:因为Rail本身发生了—并且仍在继续 发生着—翻天覆地的变化。这个在过去两年中不断掀起波澜和争论的框架正在向全世 界证明:它不仅仅是要引起web开发者们对于“传统”开发工具和方法的反思,更要为 他们指出正确的工作方式。 David heinemeier hansson(DHH,本书的另一位作者)从自 己的项目中抽取衍生出的 Rails框架在受到足够多的关注之后,迅速地吸纳了来自整个社 群的经验和教训,并以飞快的速度成长完善。这本 AWDWR的第1版仍然有用,但已经 错过了Rais太多令人兴奋的新特性,还有太多内容处于过时或即将过时的境地,这就是 你会看到这个第2版的原因。 正如任何一位有经验的读者都可以看出的,拥有一本超过700页的厚书,这就足以 表明 Rails并不是像很多人所以为的那样—个“简单的”框架。我的观点恰恰相 反:如今的 Rails不仅不简单,甚至可以说是充满了魔术。在使用 Rails开发网站和翻译 本书的过程中,我几乎每天都会得到一些意外的惊喜。公正地说,我并不真的喜欢这种 感觉,因为这有悖于我所推崇的“最小惊讶原则”。在我看来,一个好的软件应该让使 用者感到所有事情都顺理成章,而不是不断地让他们感到惊讶。不过 Rails的这些魔术并 没有改变一个基本的事实:Ruby是一种符合“最小惊讶原则”的、出色的编程语言。使 用构建在Ruby之上的 Rails,即便不知道所有那些神奇的魔术,你仍然可以快速地 比使用那些“传统”开发工具(例如2EE)快速得多—开发你的应用程序:而那些神 奇的魔术则可以让你变得更快、更好。在这一点上,Rail继承了Unix世界一贯的精神: Web开发捷之道一应用Rais进行敏捷Web开发,第2版
译者序 il 匍果说H什么事情比 译一本厚达 4贞的书里费神的话.那就是 书的第 2版 被它的作苦的---不幸地写到了 720页 ,并且其中 %的内容与前一版不同 .而 哥还是你 如本 书的 Th rn 所说 创作这 件吃 低估的工作.因为大部分读者很难想象仅仅时阴 阳个月之后推出的 2版 有如 之大的变动.而作为这本书前后两版译者的 对此惑同身受. 真正街题的是,当 il Web Del·e/opment with Rails 版还 南助全世界的 il s开发 爱好者学 的时候 会 以近 崭新的而貌如此迅 场? 案显而 因 为 ai 身发生 一并且仍在继续 发生{i-一翻天 的变化.这个在过 断掀 波洲和 争 架正在 向全 证明 :它不仅仅是坚引起 b开发者 们对于 传统"开发工具和方法的反思,更直l为 他们指出 正确的工作方式 David Heinemeier Hansson D H 的项 取衍生出 架在受到足够 的关注 地吸纳 整个社 群的 验和 I I 并以飞快的速度成长 .这本 R的第 l版仍然有用 .但 太多令人兴奋的新特性,还有太多 内 处于过 将过时 境地 这就是 你会否到这个第 2版的原因。 正如任何一位育经验的读 都可以看出的,拥'i 一本趟过 ∞页的厚书 .这就足以 我明 i1 s并不是一一你很多人所以为的那样-一一个 "简单的 框架. 我的观点恰恰相 反=如今的 ai s不仅不简单,甚至可以说是充满了魔术.在使用 ai s开发网站 翻译 本书的过段中 .我几乎每天部会得到一些意外的惊喜.公正地说 我并不真的喜欢这种 感觉,因为这有悖于我所推崇的 "最小惊讶原则 .在夜看来.个好的软件应该让使 用再-感到所有事情都顺理成章.而不是不断地让他们感到惊讶.不过 ai s的这些魔术并 没有改变一个草本的事实 uby 种符合 程语 用构建在 y之上的 ail .即便不知道所有那些神奇的魔术.你仍然可以快 比使用那些"传统 "开发工具 (例如 J2 EE )快速得多-一开发你的应用程序:而那些神 奇的庵术j! J可以让你变得更快、更好.在这一点上. i l nix 贯的 精 Web JfJtItl'ZiII-&i il IJIjItl' Web JfJt 2 15 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
乡N3 ivp译者序 在一个简单有效的基础上你可以做好所有事;而乐于探索的人还有额外奖励,他们可以 把事情做得精彩绝伦。 当 Rails不断成长的同时,整个开发者社群—不论 Rails的鼓吹者还是怀疑者 也都在不断成长。我们可以看到,如今人们讨论的焦点已经不再是“ Rails是否真有那么 高的开发效率”,而是“Rai是否已经准备好进入企业应用”。这个问题其实应该分为 两部分:其一,一度以“快速开发网站”为卖点的Rals,能否应对复杂度和规模都更大 的web应用?其二,一度被视为“天才玩具”的 Rails,能否适应人数更多、水平更参差 的“普通团队”? 对于这两个问题,并没有一个简单的答案,但答案是有迹可寻的:全球有众多的先 行者正在从技术与方法学两方面为 Rails提供强有力的支持。他们的努力有一部分融入了 Rails核心,更多的则围绕着Rais形成了一个欣欣向荣的社群。还记得DHH如何狂傲地 说“ Rails不会支持复合主键”吗?在本书中你会看到,一个让 Rails支持复合主键的插 件已经存在了。这是Unix社群的传统:每个软件只做一件事,并把它做好。正因为秉承 这一传统,我们才有理由相信 Rails和它的社群能够良好地成长。社群的工作是卓有成效 的,如果你对Rais有所怀疑,或许应该先看看这个社群是不是已经解决了你的问题。 直到今天为止, Rails还远远谈不上“成熟”—它甚至连“稳定”都谈不上,以 DHH为首的开发团队仍然在大刀阔斧地改进它,现在我们已经可以预期 Rails2.0还会引 入规模不小的变化。 Rails还在高速成长。这对于某些人、某些项目来说或许是不可接受 的,但对于另一些人、另一些项目来说却是难得的机会。如果你恰好属于后者,这本书 应该可以帮助你与Rals一起成长—实际上很多人是从beta版开始就在阅读本书的PDF 版本,他们早就在与 Rails一起成长了。 在这篇译序的最后,我要感谢 Thought Works公司对我翻译工作的大力支持。 Thought Works公司在全球范围内已经进行了为数不少的 Rails项目,其中包括开源项目 和客户定制项目。通过对这些项目—尤其是他们在中国进行的 Rails项目—的学习研 究,我获得了大量宝贵的第一手经验,也愈发增进了对 Rails的信心。正是因为像 Thought Works这样拥有雄厚技术实力和丰富项目经验的企业不断开拓, Rails才能更快、 更好地成长 话已经说得够多了,下面就请享受你手上这本厚厚的书吧。祝你阅读愉快、编程愉 快 林芷薰 2007年2月 Wb开发敏捷之這一应用 Rails进行敏捷Web开发,第2版
iv .... 者厚 在一个 有效的基础上你可以做好所有 ;而乐于探索的人还有额外奖励 们可以 把事情做得精影绝伦 不断成长的 同 整个 者社 不论 ai -- 也都在不断成长. 夜们可以看到,如今人们讨论的焦点已经不再是 il s是否真有那么 的开发效率 ".而是 s是否己经准备好进入企业应用 两部分.其一 一度以 "快速开发网姑 "为卖点的 il .能否应对复杂度和规模都更大 二, 度被视为 具" 人数 更参差 的"普通团队 .. ? 对于这两个问题 ,并没有一个简单的答案 ,但答案是有迹可寻的z全球有众多的先 行者正在从技术与方法学两方丽为 il s提供强奋力的支持.他们的势力有一部分融入了 il 苟Rai 欣欣 得DHH 如 何1£ .. M. 在本书 会看到 让R 支持 件已经存在了 .这是 x社群的传统z每个软件只做-件 J ~ 它做好 正因为秉承 一传统.我们才一百理由相信 il s初它的社群能够良好地成长 tt群的工作是卓有成效 的.如果你对 i l s有所怀疑.或i于应该先否看这个社桥是不是已经解决了你的问题 直到今天为止 i l 还远远 谈不 至连 稳定 DHH 开发囚 队 刀 阔 斧 朋R .0 入规模不小的变 Rails i£在南地成i.'; .这对「某些人 、某些项目米说或许是不可援受 ,但对于另一些人、另 一些项目来说却是难得的机会.如果你恰好属于后者,这本书 应该可 IJ你与 一足成长一一实际上很多人是从 a版开始就在阅读本书 版本 .他们早就在与 ai 一起成快了 在这篇 评序 的启后 ,我坚感谢 Th s公司 翻 译 工作 的大力支持 Th u g 全球范围 经进 不少 源项 和客户 定制项 .通过对这些 是他们 中 国 行的 i l 项目 -一的学习研 ,孜获得了大 最宝贵的第 -孚经验 .也愈发增进了对 i l s的信 .正是因为像 Thought ork 雄厚技 实力 经验 不断 ail 更好地成长 话已经说得够多了 ,下面就请享受你手上这本厚厚的书吧.祝你阅读愉快、 编程 快. 林芷煮 00 7 年2 Web JtIlf1#2 .6Vi il 'lit1# WebHJt. flJ2 1fff 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
该书下载自-书部落-分享计算机经典巨著!-www.shubulo.com!仅供试看^ Tous les jours, a tous les points de vue, je vais de mieux en mieux. 每一天,我都在变得更好 Emile Cou白 第2版序 Preface to the Second Edition 从本书第1版面世至今,已经18个月过去了。甚至在那之前, Rails就已经显出了 走红的潜质。但即便如此,我还是坚持认为:当时没有任何人能想到这个框架竟然会变 得如此显赫。 在随后的一年里, Rails已变得越来越强大,不仅众多激动人心的新网站以它为基础 搭建起来了,而且连很多大企业(包括一些家喻户晓的大企业)也开始在内部和外部的 应用中使用Rals。同时 Rails也赢得了技术社群的广泛赞誉: David Heinemeier Hansson Rails的创造者——在 OSCON被评为“年度最佳黑客”; Rails赢得Jolt“最佳web 开发工具”大奖:本书的第1版也赢得了Jolt“最佳技术图书”大奖。 但 Rails团队并没有躺在功劳簿上睡大觉,他们还在不断地给Rals增加新的功能和 工具。 Rails1.0于本书第1版之后几个月问世,增加了数据迁移等功能,并且全面升级 了对AJAX的集成支持。Rail1.1于2006年春季发布,这是一个爆炸性的版本,其中引 入了超过500项变更,而且很多都是影响深远的变更。譬如说,RJS模板改变了开发者 们编写AJAX应用的方式,集成测试框架改变了对应用程序进行测试的方式。此外, Active Record也得到了大量的扩展和增强,加上了多态关联、连接模型等功能,缓存也 得到了改进,而其他的改善则不胜枚举 所以,本书理应推出更新之后的第2版,以体现所有这些好东西。而且在修改本书 的过程中,我意识到还有别的东西也在悄然无声地发生着变化:自从本书第1版发行以 来,我们都从中学到了很多关于“如何编写 Rails应用”的经验;但 Rails中一些原本被 认为是好点子的功能在实际应用中并不理想,另一些原本被视为细枝末节的功能却日渐 显得重要,这也导致对本书的修改比我想象的要来得深远得多。我不只是要修润文字 加上几个新的AP介绍。不,还远不止于此。我根本就是重写了整本书:第1版的有些 Wed开发敏捷之道一应用Rais进行捷Web形发,第2版
Taus J,.fjours. ataus Jn poinrsd, \',,,. j, vais de ,n t' 久, 农都在主得 好. Coue Preface to the Second Edition 从本书第 1版面世至今.已经 8个月过去了 .甚至在那之前 Rail 走红的潜质.但即使如此.我还是坚持认为 当时没有任何人能想到这个框架竟然会变 得如此显赫 在随后的一年里 il 得越 越强大 搭建起来了 ,而且连很多大企业 (包括一些家喻户晓的大企业) 也开始在内部 外部 应用中使用 il ..同时 s也赢得了技术性群 广泛赞誉 Heinemeier Hansson i l .. 年度最佳黑 ; Rails Jolt ..最佳 e b 开发工具 lt ..最佳技术图书" il 队并没有躺在功劳簿上睡大觉 还在不断 增加新 工具 Rails 1. l1'1 数据 且全 丁对 X的换成支持 Rails 1.1 布. 个爆炸性的版 其中 入了坦过 00项变更 ,而且很 都是影响深远的变 .譬 RJS 改变 们编写 X应用的方式,集成测试框架改变了对应 I¥ 行测 式. Activ eR ord 也得到 增强 加上 多 态 关 模型等功能 级存 得到了改进 .而其他的改善则不胜枚举 所以 ,本书理应推出更新之后的第 2版 体现所有这些 东西. 而且在 改本 的过程中 在意识到还有别的东西也在悄然无声地发生者变 从本书第 版发 .我们都从中学到了很多关于 "如何编写 s应Ill" 的经验:但 ai s中 一些原本被 认为是好点子的功能在实际应用中并不理想.另一些原本被倪为 末节 功能却日 显得重要.这也导致对本书的修改比夜想象的要来得深远得多. 我不只 要修润文字、 加上几个新的 I介绍 .不,还远不止于此 ~根本就是贯写 整本书 有些 Wed lfJtlt1i12 -& Rails ill "IL Web lfJt 1t5 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
第2版序 章节被删掉了,又增加了一些新的章节,剩下的大部分内容也是彻底重写。于是,这就 是我们的第2版—基本上就是一本全新的书。 当第1版图书还在全球热卖时就推出第2版,这似乎有些奇怪。但 Rails已经变化了, 我们的书也必须随之而变 最后,请享受你的 Rails之旅吧! Dave Thomas 2006年10月 Wed开发敏捷之道一应用 Rails进行敏捷Web形发,第2版
vi .... 章节被删掉了 .又增加了 一些新的章节,剩下的大部分内容也是彻底盘写 .于是,这就 是我们的第 2版一一基本上就是一本全新的书 当第 l版图书还在全球热卖时就推出第 2版.这似乎有些奇怪.但 il s已经变化了, 我们的书也必须随之而变 后.请享受你的 ai 旅吧 Dave Thomas 2006 年10 Wed Jf!tiit1l2J8- &1llRails iHf7iit1l Web 第2JiN 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
该书下载自-书部落-分享计算机经典巨著!-www.shubulo.com!仅供试看^ 目录 第1章简介 1.1Rail是敏捷的….111 12读你所需… 1.3致谢 第1部分起步 3469 第2章Rais应用的架构 2.1模型,视图,以及控制器 22 Active Record: Rails的模型支持 14 23 Action Pack:视图与控制器 第3章安装 Rails 21 购物清单 3.2 Windows上的安装 3.3 Mac OS X上的安装… 3.4 Linux上的安装 3.5开发环境 3.6 Rails和数据库 3.7保持更新… 32 3.8 Rails和ISPs 第4章立竿见影 41新建一个应用程序 4.2 Hello, Rails 43把页面连起来 ….46 44我们做了什么… 49 Web开发敏捷之道一应用Rais进行敏捷Web开发,第2版
曰录 .. . . .. ……… …….. I l.l ail 敏捷 . . . . . . . . . . . . . . . . . . . . . . . . . . . ... .. . . . 1. 所需 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3致谢...... ............…........………..…………..……........…………...…… .. .. … … . . . i l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2. 樵型 及控制 . . ............................11 2.2 Active Record: il 模型支持 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3 Action ck 控制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3章安装 ............................................................. … … … 21 3. 物消 … … …...... ..... ... .... .... ... ... ... ... .. .... ... ... ... ... ... .. .... .... .... .... ............ .. 3.2 Wind 的安 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. . . . . . .. . . .. .. . . . . .. .22 3.3 MacOS . . . .. .. ... . . .. .. .. . . .. . . . . . . . . . .. . . . . . . . . . . . . . .. . . .. . . .. .. . . .. . . . . . . .24 3.4 Li n u . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 5 3.5 环境 j. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ............ ..... ... ..... ... .... ............................................. 3.6 Rail . . . .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . ... .. . . . . .. . . .. . . . . . . . . . . . ..29 3.7 保持更 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . …………… 3.8 Rail 和IS/' . . .. . . . .. . . .. .. .. .. .. .. .. . . .. .. .. . . . . . .. . . . . . . . . .32 立竿 . . . . . . . . . . . . .. . . . . …… .. . . .. . . . . . . . . .. .1 新建 个应 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33 4.2 Hello. Rails........… ...................................................................................................................... 35 .3 面还 .. .. .. .. .46 .4 们做 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 49 Web ffJtIii ili $J, il IJtIlii Web ffJ苦 1tN 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
vilp目录 第2部分构建应用程序… .51 第5章 Depot应用程序… 5.1增量式开发 52 Depot做些什么 53让我们编码吧,… 第6章任务A:货品维护, 59 61选代A1:跑起来再说 62迭代A2:添加缺失的字段 63迭代A3:检查一下 64迭代A4:更美观的列表页……111 76 第7章任务B:分类显示…85 7.选代B1:创建分类列表… 72迭代B2:添加页面布局 73选代B3:用辅助方法格式化价格 91 74迭代B4:链接到购物车 91 第8章任务C:创建购物车 8.1 Session 8.2迭代C1:创建购物车… 8.3迭代C2:更聪明的购物车 101 84迭代C3:处理错误 8.5迭代C4:结束购物车 第9章任务D:Aax初体验…… …113 9.1迭代D1:迁移购物车 14 92选代D2:基于Ajax的购物车 9 93迭代D3:高亮显示变化…… 94迭代D4:隐藏空购物车 9.5迭代D5: JavaScript被禁用时的对策 9.6我们做了什么 第10章任务E:付账 ,131 10.1迭代E1:收集订单信息 第11章任务F:管理 147 1.1迭代F1:添加用户…1 …147 11.2迭代F2:登录 155 Web开发敏捷之道—应用Rais进行敏捷Wb开发,第2版
viii .. HI 2 3l 2 34 jl 2 3 4 8.1 Session............... … ……….....…......……........……… ..............................._.................. 95 .2 代CI 购物 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. … … .98 8.3 ~代 ill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 代C3 错误 .. . . ... . . .. .. . . .. .. . . . . ... . . . . . . ... ... . . .. .. . . . . . . . . . . .. 104 .5 结束购 . . . . . . . . .. …… ……… . . ……………… . . . . . . . . . . . . . . . . . 09 9章任务 . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. ..113 .1 法代 DI 移购物东 . . .. . . . . . . . . . ... . . . . . . . . . .. .. .. .2 f. 02 于Aj ... .. .. .. . . . .. .... .. . . .. ... .. ... ... . . .... .. .. .. ... . . .... 19 D) 亮 显 .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . 122 .4 '1毡藏空 物年.. ... .. ... .. .. .. ... . . .. . . .. . . .. ... . . .. . . . . . ... . . .. .. . . .. ... ... .. . . .. ..... ... .... .. 124 .5 迭代 D5 a v aS ri 策1 .. .. . . .. .. .. .. .. . . . . .. . . .. .. . . . . ... . . .. . . . . . . . . . . . 0章任务 付账 . . . . . . .. . . . . . . . . . . . . . . 10.1 选代 . . . . . . . . . . . . . … … . . . . .. .. . . … … . . . . . . . . . 131 1 1 任务 管理 ……………. . .. . . . . . . .. .. . . .. .. .. . . . . . . 47 …… . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 1.2 选代 F2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Web JtfrH2il!-一- fll Rails.iI1fI, eb Jt J!N 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
该书下载自-书部落-分享计算机经典巨著!-www.shubulo.con!仅供试看^∧ 目录“ⅸ 113迭代F3:访问控制 …158 114迭代F4:边栏,以及更多的管理功能 第12章任务G:最后一片饼干 167 12.1生成XML 167 12.2扫尾工作,…111 174 第13章任务T:测试 …177 13.1加上测试……111 13.2模型的单元测试 178 13.3控制器的功能测试 190 13.4应用程序的集成测试 205 13.5性能测试 213 13.6使用Mock对象 第3部分 Rails框架 221 第14章深入Rals 14.1 Rails在哪儿 223 14.2目录结构 14.3 Rails配置 232 144命名约定 235 14.5 Rails的日志 238 146调试信息 239 14.7精彩预告 第15章 Active Support 15.1通用扩展 15.2枚举和数组 244 15.3字符串扩展… …111245 154数值的扩展 15.5时间和日期的扩展 15.6Ruby符号的扩展 250 15.7 with_options 251 15.8 Unicode支持 第16章数据迁移 259 16.1创建和运行迁移任务 260 162剖析迁移任务 .262 Web开发敏捷之道一应用Rals进行敏捷Web开发,第2版
目录 IX 1.3 代F3 . . . .. . . . . . . .. . . .. ... .. .. .. .. . . .. . . .. . . .. . . .. . . .. . . .. .. . . . . . .. . . ... ... .... .1 58 1.4 F4 功能 . . . . . . . . . . . . . . . . . . . . . . . . . . …… . . .160 . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 12 .1 '1. XML ....................................................................... ……........... ……………........……167 12 .2 工作 . . . . . . . . . . . . . . .. . . . . . . ... . . .. . . .. . . . . .. . . . . . . . . . . .. . . . . . ... .. ... . . . .... .. . . .... ... . . . .. .. . . ... .. . . .. .. .. .. .17 . . . . . . . . . . . . . . . . . . . . ..... … ...... … - … ..... 177 .1 测 试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... .. .. . . . . ... .. . . .. .. .... .... .1 77 模型 元测试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . … …… …… .1 7 8 13.3 控制 能测试 . . . . . . . . ... ... . . .. .. . . . . . ... ... .. . . . . .. . . ... .... . . . . . . .. . . .. .. . . . . . . . . . ... . . . . . . ... .. . . . . 19 13 .4 用 程 集成测 .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 13 .5 能测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 oc 对象 . . . .. . . . . . … … … … …… ……山… . . . . 3部分 il .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 ........…………·… … … … … … … ......... …………… ...223 14.1 Ra .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 223 ……. . . . . . . . . . . .. . . …… . . . .. ……… …… …… .. .. .. .. 223 14.3 ail .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 232 .4 约定 . . .. .. 2 35 14.5 i l .. .. .. .. .. … … . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. 238 14 信息 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 239 14 .7 彩顶 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 241 Supp。目 .. .. .. . . .. .. .. .. .. .. .. .. .. .. . . .. .. .. .. .. .. .. .. .. .. .. .. .. . . ... .. .243 15 . . . . . . . . . . . . . . . - . . . . . …… …… … 山 山 .. . . . . . . …243 枚举 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 244 15 ; 1 1 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 245 扩展 .. …… …… .. .. . . .. . . .. .. .. .. .. .. .. .. .. .. .. .. 24 15 .5 间和 扩展 .. .. .. .. .. .. .. .. .. .. 248 15.6 .... .... .. .... .... .... .. .... .. .. .... ...25 15.7 wi ti .................……......…………….......…......…......… ............................................... 251 15.8 nicode 支持 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 252 据迁移 .. .. .. .. .. . . .. .. .. .. . . . . .. .. .. 16.1 lT 移 任务 60 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 262 Web ffJtIPH2. &Ii房Rails i!lfi, ff 1!.f 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
XD目录 16.3表的管理 266 164数据迁移任务 271 165高级迁移任务… 274 166迁移任务的缺点… 276 16.7在迁移任务之外操作数据库结构 277 168管理迁移任务 278 第17章 Active Record第一部分:基础 281 17.1表和类 282 172字段和属性 282 17.3主键与ID 286 174连接数据库 288 17.5 CRUD 293 17.6聚合与结构化数据 311 17.7杂录 318 第18章 Active Record第二部分:表间关联 321 18.1创建外键 322 18.2在模型对象中指定关联 324 18.3 belongs_to和 has xxx声明 1326 184连接多张表 341 18.5自引用的连接 .351 18.6 Acts As… 352 18.7何时保存…11111 18.8预先读取子记录… 189计数器… 359 第19章 Active Record第三部分:对象生命周期 …361 19.1校验 361 19.2回调 371 193高级属性 378 19.4事务…1 381 第20章 Action Controller:路由与URL 391 20.1基础 391 20.2请求的路由… 392 第21章 Action Contro‖ler和Rals..1 21.1 Action方法… 423 Web开发敏捷之道一应用Rals进行敏捷Wb开发,第2版
x ~目 16 .3 袤的 …… .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . .. . . … ……… . . . .. .. .. .266 16.4 移任务.. .. ........ .... ...... ........ .. .. ...... .... .... .......... .... .... .... .. .. .... .... ...... .... .... .... .. ...... ........ .. ...27 移任 . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 274 16.6 移任务的 . . . . . . . . …… … . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. 276 16.7 作数据 . . . …… .. …… … … . . . … … .. .. .. 277 理迁 . . . . . . . . . . . . . . . . . . . . . .. .. .. 27 li ve eco d第一 ·基 .. .. . . .. . . . . . . .. .. . . .. .. .. .. .. .. .. .. . . 28 .1 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .... .. .. .. .. .. .... .... .. .. .... .. .282 7. 字段和属性.. .. .. .. .... .. .. .. .. .. .... .. .. .... .. .. .. .. .. .. .. .. .. .... .. .. .. .. .. .. .. .... .... .... .. .. .. .. .. .. .. .... .... .... .. .. .... .. .. .. ... 28 2 17 .3 10 ...... .. .. .. .. .. .. .. . . . . . . . . . . .. 286 17 .4 数据 .. . . .. . . .. . . … … . . . . . - . . . . . … … . . .. . . … ……… ……………288 17.5 CRUD.. .................................................................................................................................... 293 .6 与 结 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 311 17.7 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 3 18 eco d第二 :表间关联 . . . . . . .. . . . . . . . . . . . . . . . . . .. 32 .1 创建 . . . . . . . . . . .. ….. .. .. .. .. .. .. .. .. 322 18 .2 对象 .. .. .. . . . .. . . …………… ………. . . ………….. 324 18.3 belongu 和has_xxx .. .. .... .... .... ...... .... .... .. .. .... .. .. .... .. .. .. .. .. .... .... .. ...... .. .... .... ...... .. .....3 26 .4 . . . . . . …… .. .. . . …… …… . . . ……….. . . ……. . . . .. .. .. 341 .5 用 的连接 . . .. .. .. . . .. …… . . . .. .. . . . . . . . . . .. ... 351 18.6 Acts As..................................................................................................................................... 352 时保 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 356 18 取子 . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 358 18 .9 计数器 . . …………… ……………359 ct d第三部分 对象生命周期.... .. ..… .. .. .. .. .. .. .. .. .. .. .. .. .. .. .1 校验 . . . . . . .. …… .. . . …… …………… .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 361 9. .. .. .. .... .. .. .... .. ... .. .. ... .. ... .. ... .... .. .. .. ... .. .. .. ... .... ..... .. ... ... .. .. .. ... .. .. .. .. .. .. .. .. .... .. .. .. .. .. .. .. .. .. .. 3 71 19 .3 .. .. .. .. .. .. .. .. .. .. ... .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .378 .4 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 381 ll ,路由与 ....................…..…..............… …....… .............39 1 20 .. . . . . . . .. .. . . . . . . . . ……. . . . . . . . . . . . . . . . .. .. .. 391 20 . . .. . . . .. . . . . .. . . .. .. 392 1章 t r ll i l .... ...... ... ... ... .... .... .. ... ... .. 田.. .. ... …. .. ... .. ... .… .. .. .. 23 2 1.1 ti on .. .. .. .. .. .. .. .. .. .. .. ..4 23 Web Jf6tIt~2ilJ .6Jlflj Rails 活仔 理Web Jf6t jj曹2 1/5 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^
该书下载自-书部落-分享计算机经典巨著!-www.shubulo.com!仅供试看^ 目录 21.2 Cookie和 Session 434 213 Flash-Action之间的通信 44 214过滤器与校验 446 21.5缓存初接触 454 21.6GET请求的问题 461 第22章 Action View 221模板 465 22.2使用辅助方法 471 223用于格式化、链接和分页的辅助方法… 473 224如何使用表单 480 225包装模型对象的表单 482 22.6自制表单构建器… .494 22.7处理与模型对象无关的字段… 228 Rails应用的文件上传 22.9布局与组件 50 05 22.10再论缓存 513 2211新增模板系统 518 第23章Web2.0..1 23. 1 Prototype. 521 23.2 Script. aculo us 542 233RJS模板 58 23.4结论 565 第24章 Action Mailer. 24.1发送邮件 242接收邮件 578 243电子邮件的测试… 579 第25章 Web services on rails 251AWS是什么(以及不是什么) .583 25.2API定义……584 253分发模式… 589 254使用别的分发机制… 255拦截方法调用 25.6 Web Service的测试 …594 Web开发敏捷之道—应用 Rails进行敏捷Wb开发,第2版
目录 III xi 21.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 F1缸 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1. 过滤 .. .. . . .. . . . . . . . . . . . . . .. . . . . . .. . . .. . . . . . . . . . . . . . . . ... ... ... . . . . ... . . . . .. . . . .. .. 44 1.5 初接触 .. .. ....... .......... .. . . . . .. .. . . . ... . . .. .... . . ... ... . . .. . . .. .. ... ...... .... .... .... . . .... . . ... .. .. .45 21.6 GET ……… . . .. .. .. …… .. .. .. .. . . . .. .. .. …….. .. . .. . . . . . .. . . . . . . .. . . .46 22 iew …………… …… …… . . . . . . . ………… . . . . . . . . . . . . . . . ……… . . . .465 22 扳.... ... .. . . . . .. . . . . . . . . .. . . . . . . ... . . . . . . . . . .. .. .. . . .. . . .. . . .. . . . . . . . . .. . . . . . . . . . . . . .. . . . . .. .. . . .... .46 22 .2 使用 辅 .... ... ... ... . . .. ... . . . .. .. . . . .. . . .. . . .. ... . . .... . . .. .... . . .. .. .. . . .. . . . . .. . . . . . 47 22 .3 式化 链接和分页 辅助方法 . . .. . . . .. . . .. . . .. . . . . . . …… …… …… . . . . . .473 22 何使 . . ... . . .. ... ... .. . . ... .. . . . .. . . . . . . . . .. . . . . ... . . ... .. . . .. . . . . . .. .... .. .. . . .. .. .. .. .. .. . . .. .. .. 480 22 .5 型对 的表 .. . . .. . . . .. . . ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..482 22 .6 制农4' 器. ... . . .... .. . . . .. ... .. .. .... . . .. .. .. . . . . ... .. .. . . ... . . . . ... . . ... .. . . ... .. . . . .49 22.7 院型对象无 字段 . . . . . . . . . . . . . ……… . . . . . . .. . . . . .. .. . . .. . . . . . .. .. . . .498 22.8 的 文件上 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501 22 .9 ... .. . . .. . . . . . . . . . . . . . . . . . . .. .. . . . . .. . . . . . . . . . ... . . . . . . . . . . . . .. .. ... . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . .5 10 再论 ... .. . . . . . . . . .. . . . . .. .. .. .. .. . . ... .. .. .. .. . . . . . . . . . . . . . . . . . . .. .. . . .. .. . . .. .. . . .5 13 22.11 阪系 ……… …………… ………… … … … … . . . . .. . . .. .. .518 3章 eb 2 . . . . . . . . . . . 23 .1 ototype. , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , . . . . ,. .. . . . . . . . . . .521 23.2 Script.aculo.us.....................……..................................…........ …........…… … …542 23.3 RJS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... . . .558 23 .4 . . . . . . . . . . . . . . . . . . . . . . . . . . . ,.. ... ... ... .... ... ... .. ... . . .. ... ... .. . . . . . . . . . . . . . . . . .. .565 4章 il . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 .. .. .. .. .. .. … … .. .. … … .. .. . . …… ………. . . . .. . . .. .. . . 67 24 .2 . . . . . . , . . . . . . . . . . . . .5 .3 . . .. .. . . .. .. ... .. . . .. . . . . . . . . . . . .. . . . . .. .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . 579 5章 Services on Ra ils 583 25.1 AWS ..............……"……"………………..…….......…...... … 583 25.2 API . . .. .. .. . . . .. . . . . . . .. .. . . .5 84 25 .3 发模 . . . . . . . . . . . . . . . . . . , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . .. . . .. . . .. .589 25 .4 剔的分发机制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ,. .590 .5 调用 .. . . .. .. .. .. .. .. . . . .. .. .. .. .. .. … … .. . . . . . . .. . . 59 25.6 Web erv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594 Web 1fi1t1t1i. ,ffi ., WebIfi1t 1fN 该书下载自-书部落-分享计算机经典巨著!--www.shubulo.com!仅供试看^_^