《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
正如上一节所说,这节我们将美化Product的展示。这节的主要工作是,把产品按照一定的列表进行展示出来。
上面的章节中,已经创建了Product相关的Controller,这个是方便商品的卖家管理商品使用的。现在,我们创建一个新的Controller,用于向买家展示商品。创建Controller很方便,可以直接rails命令的generate工具来完成。命令如下:
rails generate controller Store index
请观察输出,这里会显示都创建了哪些文件。创建完成后,启动Rails服务器,访问 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
随着JUnit的普及,”测试驱动开发” 程序开发方法的推广,同时伴随着敏捷开发、极限编程的流行,可以从”技术”上保证产品质量的单元测试,深刻影响着现在的任何软件开发。受此影响,Rails中就内部集成了测试功能,方便大家进行各种类型的测试。本节,我们就详细介绍一下Rails中集成的测试功能。
目录结构介绍
打开%Depot%/test/目录,你会发现,这个目录下有五个目录:fixtures、functional、integration、performance、unit,还有一个文件test_helper.rb。另外,D瓜哥看Rails的文档中说明中,没有提到 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
上两节,我们简单创建了一个商品维护的应用。但是,在想应用中添加商品信息时,我们必须确保商品信息的正确性!那么,如何来实现呢?也许你已经想到了,数据校验!这节我们就给大家介绍一下数据校验。
对于任何程序来说,数据校验都是必须的。比如,我们注册邮箱,邮箱名不能为空;在论坛注册账号,注册名不能为空,当然有些是邮箱等不能为空。同样,对于,我们这个学习程序”Depot购物网”,也有同样的要求。比如,产品名称不能为空;产品价格不能为0,否则只能”赔钱”!
这样,问题就来了: 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
在看了产品相关的应用后,我们的客户有一个要求(客户似乎总有提不完的要求。对吧?):商品列表太丑了。提议我们进行美化,看能否将商品图片一起展示出来?
这让我们有点进退维谷。作为开发人员,我们职业性地深吸一口气,带着不置可否的摇头,低声问道”你想要什么?”同时,我们也想想炫耀一下,Rails可以轻松应付这些变化。我们打开我们信赖的编辑器。
在我们进行更深入的开发之前,最好使用一组测试来确保应用的可行性。我们可以使用 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
我们在上节内容最后说到,我们需要首先开发和商品信息相关的模块。那么,这一节我们就真正进入系统开发阶段。
首要的开发任务是创建Web应用的结构,使得我们可以在其之上维护我们的产品信息,比如创建新产品,删除已有产品,删除不需要的产品等等。提前说明一点,我们将采用很小的迭代开发,小到以分钟来度量。现在开始。
具有代表性的是,我们在每一个迭代中会再分为很对步骤,比如在迭代C中,可以有C1、C2、C3等。在本次迭代中,我们分为两步。
D瓜哥的呱呱——以后简称D呱呱
由于以前没有注意到这个细节 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
上一节,我们介绍了Rails的整体架构。实践出真知,如有想更加真实体会Rails的魅力,还是使用Rails自己动手开发一个网站来的更加真真切切!所以,本系列文章从本节开始,带领大家从零开始,做一个购物车系统。另外,这里特别说明一下,本系列的基本内容会跟着《Agile Web Development with Rails》这本书的内容来。(D瓜哥也是初学,想自己玩;水平所限,还玩不转。)D瓜哥也会亲自实践一遍,如果实践中发现什么问题,会努力解决,问题描述以及解决方案都会 阅读全文…
临下班时,在CodeProject上看到了这篇文章的英文版,觉得不错。然后,晚上就加把劲把它翻译出来。初次翻译,水平有限,难免出错,敬请指正。
介绍
我发现,jQuery真是一个伟大的框架,它可以非常容易而轻松地扩展了我们可以做的客户端代码程序。在这篇文章中,我将重点介绍一些使用jQuery的技巧,给你开一个高效使用jQuery框架的好头。即使你已经对jQuery比较熟悉,但是其中的一些技巧依然可以帮助你更有效而恰当地使用jQuery。
第一条:使用最新版的jQuery
jQuery库的每个稳定发布版都会引入性能优化,同时 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
经过上面两节的介绍和折腾,我们对Rails有了一个初步的认识。这一节,我们抛开具体的编码,站在更高的层次去俯瞰一下整个Rails程序的架构。
对于Rails来说,一个很诱人的特性就是Web程序的组织结构。这种结构可以让人更加容易地去创建应用程序。但是这是为什么呢?这一节我们就来看看这其中的奥妙。
Model、View与Controller
让我们暂时将时光返回到1979年,Trygve Reenskaug为交互程序设计了一种新的架构。在他的设计中,应用程序被划分成了三个组件中去:Models, Views和Controllers。
Model组件负责维护应用程序的状态。有时,应用程序的状态是瞬时的,也许只存在于用户和应用程序的交互中;有时,应用程序的状态却是持久的,并且会被保存到应用程序之外,一般是数据库。
Model并不仅仅是数据,还组织、维护着和数据相关的所有业务规则。例如, 阅读全文…
多表关联下的测试数据制造方法系列
- 多表关联下的测试数据制造方法(一):思路详解
- 多表关联下的测试数据制造方法(二):将数据导出为CSV文件
在上一节,D瓜哥给大家介绍了一下如何使用存储过程,将数据导出成CSV文件。既然有数据文件了,我们该如何将这些数据导入到数据库中呢?!Oracle数据库提供了SQL Loader这样一个将数据文件导入到数据库中的功能。这篇文章将给大家介绍一下SQL Loader的用法。另外,再炒炒剩饭,把D瓜哥以前使用TCL语言写的脚本分享给大家。
SQL Loader简介
概念
SQL Loader是ORACLE的数据加载工具,通常用来将操作系统文件(数据)迁移到ORACLE数据库中。SQL Loader是大型数据仓库选择使用的加载方法,因为它提供了 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
在上一节中,D瓜哥简单讲解了一下Rails环境的搭建。这一节,D瓜哥将通过一个小小的例子,来给大家演示Rails的牛逼之处!
新建工程
用过Java的人都知道,即使在Eclipse等集成开发工具中,新建一个工程也相当麻烦。各种选择、各种设置,真心很麻烦。那叫一个纠结啊!(不瞒大家,D瓜哥就是Java攻城师一枚。)
您知道Rails中新建一个工程需要多大的工作量吗?如果我告诉你, 阅读全文…