![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ruby on rails
文章平均质量分 66
jinxihexilove
这个作者很懒,什么都没留下…
展开
-
ruby的类方法与实例方法
类方法也叫静态方法,通过类名来调用的方法。实例方法,必须要new一个实例出来才能用。class Foo def self.bar puts 'class method'原创 2011-08-08 15:14:27 · 1288 阅读 · 1 评论 -
Ruby on rails开发从头来(四十四)- ActiveRecord基础(创建记录)
Active Record使得实现CRUD的数据库基本操作变得简单,在下面的几节里我们使用Mysql数据库中的orders表来进行CRUD的操作,这次先看创建(Create)。 我们假想有一个Model,名为Order:class Order end在面向对原创 2011-08-08 14:23:58 · 249 阅读 · 0 评论 -
Ruby on rails开发从头来(四十八)- ActiveRecord基础(动态查询)
数据库上最常运行的查询莫过于根据指定条件返回符合的结果集,查询可能是返回所有名字为‘dave’的订单,或者是某个博客上所有标题含Rails的post,在很多其他的框架和程序设计语言中,你需要创建sql来执行查询,Active Record利用了ruby语言所包含的动态能力来做这些原创 2011-08-08 14:20:31 · 273 阅读 · 0 评论 -
Ruby on rails开发从头来(五十一)- ActiveRecord基础(并发处理)
在学习Rails中的并发处理的处理前,我们先简单了解下并发处理的概念。在有多个处理同时访问同一个数据库的应用程序中,可能会出现这样的情况,因为一个处理更新了数据库中的行,而使得另一个处理中持有的数据变得陈旧了。例如,A和B先后从数据库中提取了相同的数据,并都做了修改,这时B先原创 2011-08-08 14:18:43 · 274 阅读 · 0 评论 -
Ruby on rails开发从头来(五十五)- ActiveRecord基础(一对一关联关系)
一对一关联,或者更正确的说是一对零或一对一关联,是通过外键引用到另外一张表中的至多一条记录实现的,下图描述了orders表和invoices表的关系: 在Active Record中,要表示这样的关系需要在Order类中添加has_one:Invoice声明原创 2011-08-08 14:16:39 · 313 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(九)-给购物车添加错误处理
在上次的内容里,我们演示了怎样构建一个简单的购物车,这次的内容非常简单,给购物车添加错误处理。 对于Web系统来说,并发处理是一个无法回避的问题,我们来模仿一个并发冲突的情景:1. 用户进入购物车页面,看到共有5种商品。2. 管理员原创 2011-08-08 14:53:51 · 306 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十)-清空购物车和格式化金额
在上次的内容里,我们给购物车添加了错误处理,这次来实现清空购物车和金额的格式化处理。 到现在我们还没有给显示购物信息列表页面的“empty cart”链接添加任何处理。我们首先来实现这个功能:1. 在Store_Control.rb文件中添加empty_c原创 2011-08-08 14:53:06 · 311 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十二)-订单(Order)
在上次的内容里,我们创建了订单的Model,和表示页面,这次继续编写CHECKOUT的处理。 1. 在checkout.rhtml的页面上,有一个CHECKOUT按钮,上次还没有给它编写处理代码,现在在store_controller中添加save_order原创 2011-08-08 14:51:31 · 311 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十七)-控制访问权限
上次我们实现了登录的页面,现在我们区别管理员和普通用户,根据用户的不同身份,转入到不同的页面 在rails中提供了filter来截获访问某个action的请求,可以用filter在action被调用前或调用后添加我们自己的处理。在这里,我们在admin的contr原创 2011-08-08 14:46:03 · 310 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十九)-测试开始
前面我们已经完成了一个简单的购物车,从这篇开始我们看看在rails中怎样进行测试。 在我们创建购物车程序的时候在我们的depot目录下,就已经有一个test目录了,这就是为我们进行测试准备的。到目前为止,我们看到里面的fixtrues和functional,unit目录中原创 2011-08-08 14:43:14 · 316 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十二)-测试Controller
上次测试Modeul的问题还没有解决,但是下面的还要继续,这次来测试Controller。1. 在test\functional目录下,rails已经为我们的controller生成了对应的测试文件,要注意application_controller不会生成测试文原创 2011-08-08 14:41:45 · 288 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十五)-测试Controller
这次我们继续测试Controller,还是Store_controller。1. 先来测试测试CheckOut功能,给store_controller_test.rb添加代码:def test_checkouttest_add_to_cartget :原创 2011-08-08 14:40:30 · 266 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十六)- 使用Mock对象
前面我们测试了model和controller,学习了一些常用的测试方法,现在我们来深入学习几个有关测试的主题。第一个是使用Mock对象。在很多时候,我们的程序和实际的环境有依存关系,比如现在的购物车,在汇款,结账的时候要接入网络上的银行账号,这样就造成了我们测试的时候必须要原创 2011-08-08 14:40:10 · 430 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(三十六)- 调试技巧
这次我们来看看一些关于调试的小提示。首先,而且也是最重要的就是,编写测试代码,在Rails里编写单元测试和功能测试都很简单,使用它们,可以减低bug发生率,也可以避免在你从前的代码中突然出现bug。测试代码告诉你哪些东西能够工作,哪些不能,并且,测试代码帮助你隔离那些原创 2011-08-08 14:30:03 · 267 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(三十三)- 命名约定
在刚开始学习Rails的时候可能会困惑于Rails时怎样自动处理命名的,比如如何根据一个名为Person的Model来到数据库中找到名为people的表,这次我们就来看看Rails里的命名约定。1. 混合大小写,下划线,复数我们经常使用简写命名变量,在Ruby原创 2011-08-08 14:32:57 · 275 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(三十)- NetBeans IDE
到现在,应该告一段落了,总共有二十九篇随笔,干脆凑个整数,再写写IDE环境吧。前面所有的代码都是我用ruby自带的编辑器SciTE编写的,很不方便,随着Rails的发展,目前也有很多IDE推出来,刚刚看到NetBeans推出的6.0rc版,提供了单独的Rails开发环境,这次来简原创 2011-08-08 14:37:59 · 418 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(四)-第一个添删查改例子
在上一篇Ruby on rails开发从头来(windows)(三)-实现页面间的跳转中,我们创建了两个页面来进行跳转迁移,这次我们来写一个单表维护的添删查改的例子。 1. 这次我们重新创建一个项目depot,按照上篇中的步骤,创建depot项目。2.原创 2011-08-08 15:08:35 · 460 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(一)-使用InstantRails快速搭建Ruby On Rails开发环境
一直对Ruby on Rails抱有很大的兴趣,想看看这个被很多人称道的东西,但是一直在做windows下的开发,对于Ruby on Rails的开发环境搭建还是很头疼,这也是一直没有开始研究Ruby on rails的原因。刚刚在javaeye看到了InstantRails原创 2011-08-08 15:02:47 · 343 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(七)-创建在线购物页面
在上一篇随笔中,我们为Products创建了一个维护用的列表页面,效果如图: 这次我们使用上面维护的Products列表来创建一个最终用户使用的购物页面。 1. 创建控制器(Controller),命名为store,我们通过命令行来创建它:原创 2011-08-08 14:57:43 · 389 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(八)-使用Session创建购物车
在前面的内容里,我们演示了怎样构建一个商品的列表,这次,我们在前面内容的基础上,构建一个简单的购物车。 1. 首先我们要来创建一个保存客户购物信息的表:数据库脚本:drop table if exists line_items;create t原创 2011-08-08 14:54:36 · 405 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十一)-订单(Order)
在上次的内容里,我们实现了清空购物车和金额的格式化处理。这次实现订单的模块。 1. 首先,我们要在数据库里创建Order表,创建表的Sql如下:create table orders (id int not null auto_increment,原创 2011-08-08 14:52:22 · 287 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十六)-登录
现在我们的购物车程序为两种用户提供了服务,一类是普通用户,一类是管理员。两类用户分别有不同的功能。上次我们又实现了添加用户的功能,这次我们来实现登录的功能。 1. 给login_controller添加login方法。上次使用rails的命令行生成的l原创 2011-08-08 14:47:17 · 340 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十)-测试model(CRUD)
上篇随笔简单了解了rails的测试和测试用数据的使用,这次来看看怎样对一个model进行添删查改的测试。 1. 还是使用上次写的products_test.rb,修改test_turth方法的名字为test_create,并且使其内容为: def tes原创 2011-08-08 14:42:49 · 441 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十一)-测试Model时的问题
以前的随笔都是按照书上的例子写下来的,但是,这次在测试Model时,按照书上的例子代码怎么也走不通,所以就换个方式,这篇变成了提问。 按照书上的说法,在products_test.rb开始的时候,会根据定义的yml文件,加载测试数据到一个Hash里,这样,在test的时候我们原创 2011-08-08 14:42:17 · 256 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十四)-测试Controller
上篇随笔里介绍了rails在功能测试方面的一些约定。这次我们继续会到Controller的测试。之前我们测试的是login,可以相见,用户在login以后就要开始进行购物的动作了,所以我们现在就来测试store_controller,我们先来测试index方法。1.原创 2011-08-08 14:41:00 · 307 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十七)- 测试驱动开发
在敏捷开发的实践中,测试驱动是少不了的。这篇来看看在rails中的一个测试驱动开发的例子。在前面我们编写并进行了一些单元测试和功能测试,现在,我们的客户突然要求添加一个功能:系统的每个用户都可以对商品进行查询。 我们先初步的画了一些草图,来整理我们的思路和设计,然后开始写原创 2011-08-08 14:39:36 · 344 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十八)- 使用Rake运行测试
Rake是使用ruby编写的程序,我们用Rake来读入RakeFile。而Rakefile里包含了定义的任务,每个任务都有一个名字,和它所依赖的一些任务,并且还有一组要执行的动作。现在我们来了解一下Rails中的Rake。 当你使用Rails的generate脚本创建原创 2011-08-08 14:39:06 · 337 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十九)- 性能测试
Rails所针对的是Web项目,必须要考虑大访问量的情况,所以我们来看看在Rails怎样进行性能测试。1. 要进行性能测试,我们首先要模仿大量的数据,我们现在知道,在test/fixtures/目录下的yml文件里添加我们的测试数据,在运行测试时,这些数据会被加载原创 2011-08-08 14:38:40 · 257 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(三十一)- Rails的目录结构
之前的三十篇都是根据书本上的内容写的,很少有自己的理解,从这篇开始,来了解一些Rails的内部机理,所以理解的东西比较多,代码就少了,这次我们来看看Rails的目录结构。关于Rails的目录结构,通过前面的练习,我们应该有一些了解了,我们的工作目录主要是app和test两个。原创 2011-08-08 14:35:00 · 270 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(三十五)- 日志(Log)
Rails内建了Log功能,或者更准确的说,Rails暴露了Logger对象,该对象可以在所有的Rails程序中使用。Logger是从ruby中移植过来的一个简单的Log框架(你可以在ruby的命令行里键入ri Logger来查看标准库的文档),对于我们而言,我们只需要知道L原创 2011-08-08 14:31:04 · 232 阅读 · 0 评论 -
Ruby on rails开发从头来(三十九)- ActiveRecord基础(访问属性)
如果在一个model对象中有一个名为balance的属性,你可以通过索引操作符来获取该属性的值,你可以使用一个字符串或者标记,在这里我们使用标记,例如:account[:balance] #=> 获取值account[:balance] = 0.0 #=> 设置值但是原创 2011-08-08 14:27:37 · 276 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(三)-实现页面间的跳转
在上篇随笔Ruby on rails开发从头来(windows)(二)-创建项目和第一个Hello world 中,我们介绍了如何使用InstantRails创建一个项目和编写一个简单的Helloworld页面,今天在上次的基础上,写一个简单的页面跳转。1. 将原创 2011-08-08 15:05:54 · 429 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二)-创建项目和第一个Hello world
在前面的“使用InstantRaisl快速搭建Ruby on rails环境”后,这一次说说如何创建自己的项目,并写一个最简单的Hello页面,例子是借用Agile Web Development with Rails中的。按照下面的步骤:1. 使用菜单,如原创 2011-08-08 15:04:41 · 403 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十三)-订单(Order)
在上次的内容里,我们编写了CHECKOUT的处理。这次我们将显示购物车和订单放在一个页面上表示,这样用户在下订单的时候就可以很方便地看到自己的购物情况。 1. 修改checkout.rhtml文件,只要添加一句代码: "display_cart")原创 2011-08-08 14:50:39 · 264 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十四)-送货处理
在上次的内容里,我们完成了订单的编写。这次我们模拟一个简单的送货页面,给这个购物车的管理员用。 1. 首先,我们修改order表,给他添加一个字段shipped_at:create table orders (id int not null aut原创 2011-08-08 14:49:47 · 388 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十五)-添加用户
从这篇开始,我们来实现一组用户管理的功能,首先是添加用户。 1. 首先,我们要创建一个表保存用户信息,并且生成一个对应的model。创建表的脚本,在phpAdmin里执行就可以了:create table users (id int not n原创 2011-08-08 14:48:40 · 356 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(十八)-自动生成文档
到此,我们这个购物车的实现就完成了,下面我们可以利用ruby里的Rdoc来给我们的程序生成文档,和dotnet,java,python等一样,Rdoc可以把我们代码里类和方法声明前面的注释提取出来生成文档。 对于我们的depot程序,我们在rails的命令行里运行rake原创 2011-08-08 14:44:00 · 313 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(二十三)-功能测试的约定
上篇随笔里测试了login_controller,我们使用了很多rails内建的断言和get,put等方法来进行测试。这次来看看rails在功能测试方面的一些约定。1. HTTP请求的方法(HTTP request method)下面的方法用来模拟HTTP请求原创 2011-08-08 14:41:18 · 221 阅读 · 0 评论 -
Ruby on rails开发从头来(windows)(三十二)- Rails的配置文件
Rails的运行时配置是由config目录下的文件来控制的。1. 运行时环境(Runtime environment)当开发者编写代码时,需求是多中多样的。在开发中你可能会需要很多的登录,加载变化过的代码。在测试时,你需要各个系统之间是隔离开的。在发布之前,你原创 2011-08-08 14:33:47 · 285 阅读 · 0 评论 -
Ruby on rails开发从头来(三十七)- ActiveRecord基础
ActiveRecord是Rails提供的一个对象关系映射(ORM)层,从这篇开始,我们来了解Active Record的一些基础内容,连接数据库,映射表,访问数据等。 Active Record使用基本的ORM模式:表映射成类,行映射成为对象,列映射成对象的属性。与很多原创 2011-08-08 14:29:36 · 322 阅读 · 0 评论