图书介绍
深入浅出Rails 中文版PDF|Epub|txt|kindle电子书版本网盘下载
![深入浅出Rails 中文版](https://www.shukui.net/cover/56/33889181.jpg)
- (美)格里菲思著 著
- 出版社: 南京:东南大学出版社
- ISBN:9787564130749
- 出版时间:2011
- 标注页数:417页
- 文件大小:77MB
- 文件页数:449页
- 主题词:计算机网络-程序设计
PDF下载
下载说明
深入浅出Rails 中文版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
1 飞驰的Rails 开始了3
这个应用需要做很多事情3
那么关于这个应用我们需要些什么呢?4
Rails适用于那些以数据库为中心的应用,就像这个售票系统6
你可以用rails命令来创建一个新的Web应用7
现在需要在默认应用中加入你自己的代码9
支架就是生成的代码10
数据库中还没有数据表!14
通过运行迁移来创建这个数据表15
好棒!你挽救了好朋友的工作!19
为了更改应用,你需要深入了解应用的架构20
你的应用包含三个部分:模型(model)、视图(view)、控制器(controller)21
Rails真情指数22
这三种不同类型的代码存放在独立的文件夹中25
视图中的文件需要被编辑26
编辑视图中的HTML27
现在这个应用需要存储更多的信息31
迁移就是Ruby脚本32
Rails可以生成迁移33
给你的迁移一个“聪明”的名字,然后Rails就会为你编写代码34
你需要用rake运行你的迁移35
但是改动数据库还不够36
2 Rails应用,生来有序 超越支架49
支架做的事太多了49
让我们从生成Mebay模型开始……50
然后我们就用rake真正地创建数据表51
但是控制器是怎样的呢?52
视图是通过页面模板创建出来的54
页面模板包含了HTML55
路由会告诉Rails你的网页在哪儿57
视图没有要显示的数据64
那么页面应该显示哪些内容?65
控制器把广告发送给视图66
Rails把记录转化成对象68
数据在内存中,而网页可以看见它们69
有个问题——用户找不到他们想要的网页73
路由按照优先级顺序运行76
为了把数据放入视图,你还需要控制器中的代码78
索引页面需要来自所有记录的数据79
Ad.find(:all)一次读取整个数据表80
数据作为一个称为数组的对象返回81
数组就是一些编号后的对象序列82
用for循环读取所有的广告86
数组中的每个元素都需要HTML87
Rails把页面模板转换成Ruby代码88
可以用脚本段把循环加入到页面模板中89
在循环的每次执行中,页面都会生成一个链接90
生成的HTML是什么样的呢?91
但是有两个页面模板……我们要修改每个模板的代码吗?94
但是MeBay发送过来的新的静态内容怎么办?97
3 一切都在变化中 插入、更新和删除104
人们希望在线张贴新广告104
你已经知道如何搭建一个发布数据库中数据的应用105
保存数据就像读取数据的反向那样工作106
你需要一个用来提交数据的表单和一个保存此数据的动作方法107
表单与对象相关吗?109
Rails能够创建与模型对象相关联的表单110
@ ad表单对象还没有被创建114
表单对象需要在表单被显示之前创建好115
表单广告对象将在控制器的new动作中被创建116
现在每个页面模板都有一个匹配的控制器方法117
表单不会发送回对象,它发送回数据119
Rails需要在数据被保存之前把数据转化成对象120
手把手教你控制器的create方法121
控制器需要保存记录122
不要创建新页面,使用现有页面128
但是控制器动作如何才能显示另一个动作的页面呢?129
重定向使控制器能够指定显示哪个视图130
但是如果广告在张贴后需要修改该怎么办?133
更新广告就像创建广告一样……只有一点小区别134
你需要找到一个广告而不是创建它,135
你需要更新这个广告而不是保存它135
限制对某个功能的访问142
但是现在旧广告需要被删掉145
自己编写代码可以让你实现比支架更多的功能151
4 事实还是推论? 数据库查询器154
Rubyville健身俱乐部让你保持体形154
这个应用其实看起来很接近教练们的需求……157
我们选择修改支架158
设计搜索功能159
让我们从建立表单开始160
为界面添加搜索功能163
我们如何查找客户记录呢?171
我们只需要那些client-name=搜索字符串的记录172
每个属性都有一个查询器173
我们需要匹配客户名字或者教练名字178
查询器生成数据库查询179
我们需要修改SQL查询中的条件180
使用:conditions来提供SQL181
5 防止错误 验证你的数据188
注意——应用里有错误数据188
验证代码放在模型中190
Rails使用验证器来实现简单验证191
验证器是如何工作的?192
让我们检查某些东西是否是数字194
用户在他们的健身表单中漏填了一些数据196
我们该如何检查必须填写的域?197
验证器很简单而且工作得很好200
MeBay发生了很奇怪的事情203
验证器有效,但是它们没有显示错误204
如果你搭建自己的页面,你需要编写自己的错误消息代码207
控制器需要知道是否存在错误208
我们还要显示错误消息!212
MeBay系统现在看起来挺滋润214
6 把它们集合起来 建立连接220
椰子航空需要一个订票系统220
我们需要在一个页面上同时看到航班和座位预订信息222
让我们看看座位支架代码给了我们什么223
我们需要让预订表单和座位列表出现在航班页面上224
我们怎样才能把个页面的内容分解到几个文件里呢?225
ERb将组织我们的页面229
我们如何创建预订表单局部模板?230
现在我们需要在模板中包含局部模板231
我们需要给局部模板一个seat变量!234
你可以把局部变量传递给局部模板235
我们还需要为座位列表做一个局部模板242
人们最终登上了错误的航班244
关系把不同模型连接起来245
但我们如何定义关系呢?247
但有些人有太多的行李249
我们需要编写自己的验证器250
我们需要反转关系253
这个系统在椰子航空投入运行260
7 减少流量 ajax264
椰子航空有个新的促销计划264
页面的哪一部分变化最快?265
浏览器不总是更新整个页面吗?270
还有什么方法可以发送请求?271
首先我们需要包含Ajax库……272
接下来我们需要添加一个Ajax “Refresh”链接273
浏览器需要主动询问更新278
我们一定要让浏览器反复询问吗?279
你可以像监听按钮事件一样监听定时器事件280
Ajax真情指数284
有些人的单身派对有问题了285
表单需要生成一个Ajax请求286
表单需要由JavaScript来控制287
我们需要替换create方法289
这段代码会有怎样的效果呢?290
航班预订有个问题295
我们只知道如何一次更新页面的一部分内容296
控制器需要返回JavaScript而不是HTML297
那么Rails生成了些什么?301
如果你没有表明在哪儿放置响应,那么它就会被执行302
8 现在看起来都不一样了……XML和多种表现形式308
在世界各地登山308
用户讨厌这个界面!309
数据需要在地图上310
我们需要创建一个新的动作311
新动作看起来可以工作……312
新页面需要一幅地图……这才是关键!313
我们需要什么样的代码呢?314
这段代码仅能工作在本地主机上315
现在我们需要地图数据316
我们需要生成什么样的数据呢?318
我们从模型中生成XML319
模型对象能够生成XML320
控制器代码看起来是什么样呢?321
此时,在20 000英尺的高度……326
我们需要生成XML和HTML327
XML和HTML仅仅只是表现形式而已329
我们应该如何确定使用哪一种格式?330
地图页面是如何工作的呢?334
代码可以正式运行了336
RSS源就是XML344
我们将创建一个名叫news的动作345
我们必须更改XML的结构348
所以我们将使用一种新模板:XML Builder349
现在让我们把源加入到页面中353
在世界最高点!355
9 更上一层楼 REST与Ajax358
事件太多了!358
地图可以显示更多的详细信息359
我们能够扩展基于Ajax的地图360
但我们怎样才能改变索引页面呢?361
“show”动作需要生成怎样的内容?362
新的地图功能成功了!367
我们也需要使用Ajax来创建请求368
地图局部模板可以让我们指定一个“new”动作370
我们如何证明一个事件已经被保存?375
表单需要更新弹出窗口的〈div〉的内容376
雪崩!381
现在编辑是如何实现的……382
我们可以在弹出窗口中加入一个“Edit”链接383
我们从修改“edit”动作开始384
我们还需要在show页面上增加一个新链接386
那么我们该如何使用link_to辅助函数?387
让Ajax链接来拯救我们391
我们用错了路由!393
HTTP方法是选择路由的一个因素394
什么是HTTP方法?395
Head First Climbers需要你!398
10 真实世界里的Rails 真实世界里的应用405
看!这儿有满满一页的Ruby “试试看”405
Web应用也需要测试406
有哪些类型的测试可用呢?407
上线运行408
那么你该如何更改数据库配置呢?409
什么是REST?410
迷失方向的Web应用411
生活在Edge上412
获取更多的信息413
消遣性读物……414
相关话题的“深入浅出”系列书籍415
离开Rails村……417