自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(34)
  • 资源 (10)
  • 收藏
  • 关注

原创 ERB模板

<br />Q. Is there an easy way to comment multiple line of ruby in an html.erb file when you have:...<% .. %> blah <% .. %>blah<% .. %> blah...<br />I tried to put <!– –> around it but its still interpreted.<br />A. There are a few ways. First, you

2010-06-18 12:59:00 1244

原创 utf-8下匹配中文字符

4e00 到 9fa5 是 UTF-16 的 …… 而且不能匹配一些生僻汉字。 Ruby 1.9 比较好办,但是 1.8.6 目前用得最广泛,下面给几个 1.8 下面的解决方案。 方案一:匹配 UTF-16 先准备待测字符串 s。 如果在编码为 utf-8 的源文件中 Ruby代码 require iconv  s = Iconv.conv utf-16be, 

2010-05-29 11:32:00 669

转载 ruby on rails 常用正则表达式

正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。 匹配中文字符的正则表达式: [/u4e00-/u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^/x00-/xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 匹

2010-05-29 11:18:00 602

转载 rails symbol 疯狂的冒号

先打断一下Rails,说说Ruby语言里的一个特色--由冒号(:)作前缀组成的字符串,例如:id,:first等等。Ruby把它们称之为symbol(直译为“符号”,似乎不妥)。可以先把symbol看作是一个字符串的变量名,创建一个symbol,:’I love Rails very much!’这个变量名的值是什么呢?puts  :’I love Rails very much!

2010-05-29 10:49:00 2779

转载 MVC,稳固的三角形

在Rails,MVC一般都是两两组合,在两者间传递信息。于是有这样的组合:MVC组合实现的主要功能M-M表关联C-Cflash通信V-V模版M-CCRUDM-V校验表单C-V

2010-05-29 10:47:00 332

原创 错误提示中文标题

    # Added By: 宋鹏, 错误提示中文标题  # TODO 没有实现对多个对象的错误显示支持 error_messages_for(object_name,object_names=nil,options = {})  def error_messages_for(object_name,options = {})     options = options.symbolize_ke

2010-05-29 10:45:00 484

转载 Rails路由

此文原文在http://guides.rubyonrails.org/routing.html。这是我根据自己的理解作的一些笔记。1 使用路由有两上目的1.1 连接URLs当Rails应用收到HTTP的请求时,Rails会响应GET /patients/17Rails中的路由引擎是一个代码片断。在这个例子中,可能会运行patients控制器的show方法。显示ID为17的详细信息。1.2 从代码生

2010-05-12 12:35:00 3505 1

转载 Ruby 报表工具 Ruport

Ruport是一个免费的Ruby报表工具,它可以令到制作报表软件变得简单一些。Ruport支持从文件或者数据库获得数据,提供工具操作数据。额外地,Ruport支持高扩展的格式化软件,目前能够支援HTML、PDF、CSV和文本输出。Ruport可能是Ruby目前唯一的报表工具,目前在持续开发中,更多的新特性正在添加。安装方法:gem install ruport -ygem instal

2010-05-07 13:06:00 715

转载 crud

crud   CRUD是指在做计算处理时的增加(Create)、查询(Retrieve)(重新得到数据)、更新(Update)和删除(Delete)几个单词的首字母简写。主要被用在描述软件系统中数据库或者持久层的基本操作功能。  In computing, CRUD is an acronym for create, retrieve, update, and delete. It is

2010-04-27 11:57:00 210

转载 定律

一、墨菲定律  1949年,一位名叫墨菲的空军上尉工程师,认为他的某位同事是个倒霉蛋,不经意间开了句玩笑:“如果一件事情有可能被弄糟,让他去做就一定会弄糟。”这句话迅速流传,并扩散到世界各地。在流传扩散的过程中,这句笑话逐渐失去它原有的局限性,演变成各种各样的形式,其中一个最通行的形式是:“如果坏事情有可能发生,不管这种可能性多么小,它总会发生,并引起最大可能的损失。”  这就是著名的

2010-04-23 14:17:00 328

转载 应用Rails进行REST 开发

文章来源:http://mypages.javaeye.com/blog/291991应用Rails进行REST 开发前言    Http协议除了 get 和 post ,还可以做更多的事情,一直以来,很多的开发人员都忘了这一点。    但是,如果你知道浏览器其实只支持 get 和 post, 那么你就不会感到惊奇了。    get 和 post 是http请求从客户端传到服务器端的两

2010-04-23 11:42:00 1484 1

转载 Ruby on Rails 命令参考

1.1.Rails1.1 创建一个Rails应用程序$ rails app_name可选项:-d, database=xxx 指定安装一个数据库(mysql oracle postgresql sqlite2 sqlite3 ), 默认情况下是数据库-r, ruby-path= 指定Ruby的安装路径,如果没有指定,scripts使用env去找Ruby-f, freeze (冻结)freezes

2010-04-23 11:32:00 327

转载 find方法详解

    首先,理解find(:first,…)方法是非常重要的,该方法在同样的conditions设置下,和find(:all,…)方法生成同样的sql语句,不同之处仅在于只返回一条记录。在调用的时候,一种的参数为:first,另一种为:all。    find方法执行一个select from这样的sql语句,:all标记指定返回表中所有的记录,:first返回第一条记录。但是现在:fi

2010-04-22 11:45:00 390

转载 Rails ajax 的联动的下拉框

 # app/controllers/examples_controller.rbruby 代码 class ExamplesController     def ajax_select      @items = %w{AA BB}    end        def get_sub_items      if params[:it

2010-04-22 10:37:00 569

转载 解决Rails rake fixtures加载的顺序问题

Rails中有个rake rask,叫做 db:fixtures:load,可以帮你自动load指定目录下(text/fixtures)的yml或csv文件。然而,如果这些文件之间有依赖关系,这个task会失败。比如有两个模型Image和Locations,依赖关系为:Image has_and_belongs_to_many Locations 的单向关联。数据库中分别对应Image

2010-04-22 09:24:00 566

转载 Ruby on Rails中select使用方法

在Ruby on Rails中真的有一堆Select helper可以用,我们经常容易混淆。常见的有三个..select, select_tag, collection_select(其余的什么select_date那些不谈)我们先来看看一个基本的下拉式选项骨架p> selectname="ROR"> optionvalue="1">ROR1option>br/> optionvalu

2010-04-22 09:10:00 3334

转载 Ruby的self

self上下文     Ruby的self有和Java的this相似之处,但又大不相同。Java的方法都是在实例方法中引用,所以this一般都是指向当前对象的。而Ruby的代码逐行执行,所以在不同的上下文(context)self就有了不同的含义,先来看看常见的context self都代表哪些<td class="line_numbers" title="click to t

2010-04-21 15:40:00 3044

转载 rails中使用form.select创建动态的下拉菜单

在很多时候,下拉菜单选项是专门做一张查询表,显示里面的某个字段,这张查询表可能会被经常改动。所以,动态的下拉菜单是常见的。举个例子: 在depot的实例中,收集订单信息时,有一项是选择付款方式,原例中是做成了一个死的数组形式,针对这个例子,下面进行改进,将这个死的下拉菜单变成动态形式。 首先对于form.select方法来说,接受参数第一个是对象的字段,第二个是一个数组,数组的

2010-04-21 12:38:00 583

转载 Rails form_for(record_or_name_or_array, *args, &proc)

Rails form_for(record_or_name_or_array, *args, &proc)form_for(record_or_name_or_array, *args, &proc)Creates a form and a scope around a specific model object that is used as a base for quest

2010-04-21 12:37:00 540 1

转载 rails中使用form.select创建动态的下拉菜单

在很多时候,下拉菜单选项是专门做一张查询表,显示里面的某个字段,这张查询表可能会被经常改动。所以,动态的下拉菜单是常见的。举个例子: 在depot的实例中,收集订单信息时,有一项是选择付款方式,原例中是做成了一个死的数组形式,针对这个例子,下面进行改进,将这个死的下拉菜单变成动态形式。 首先对于form.select方法来说,接受参数第一个是对象的字段,第二个是一个数组,数组的

2010-04-21 12:37:00 407

转载 Rails form_for(record_or_name_or_array, *args, &proc)

Rails form_for(record_or_name_or_array, *args, &proc)form_for(record_or_name_or_array, *args, &proc)Creates a form and a scope around a specific model object that is used as a base for quest

2010-04-21 12:34:00 779

转载 Rails form_for(record_or_name_or_array, *args, &proc)

Rails form_for(record_or_name_or_array, *args, &proc)form_for(record_or_name_or_array, *args, &proc)Creates a form and a scope around a specific model object that is used as a base for quest

2010-04-21 11:10:00 1505

转载 rails与编码

编码的问题遇到过很多次,却没有好好总结。在整个过程中经常遇到几种乱码发生的地方:数据库,网页,文件。作为rails基础的ruby语言,尽管支持Unicode编码的字符串,但是他的类库却不真正支持Unicode。这就是说一个中文,Ruby是不知道在unicode编码格式下的两个字节其实是表示一个字符的。 详细请看:AWDWR一书252页 另外,什么是乱码?按照我们的直观感觉,就是说根本不知里边说是什

2010-04-21 10:38:00 519

转载 Rails开发:购物车(7)

第14章 测试用很短的时间,我们开发了一个高质量的、基于web 的购物车应用。在这个过程中,我们总是编写一点代码,然后在浏览器里点击一个按钮,让身边的客户看看应用程序的行为是否符合预期,然后快速提出反馈。在开发Rails 应用的第一个小时里,这种测试策略确实管用;但很快,你就有了一大堆的功能,手工的测试无法跟上了。你的手指开始疲劳,已经厌倦了一次又一次地点击所有这些按钮,所以你的测试不再频繁—

2010-04-16 10:43:00 1131

原创 Add User按钮的工作原理追踪

第11章的一个问题,在/users/new页面下点击"Add User"时,是如何跳转回index页面的? 在users_controller.rb中,发现有个create action,这里面的语句就是完成了跳转回index页面并提示添加成功,那么现在问题成为,为什么点击了Add User按钮,会执行到create action呢? 通过在页面上查看源代码发现:  这是A

2010-04-14 16:59:00 329

转载 Rails开发:购物车(6)

第12章 最后一点小改动项目非常成功,几个月以后Depot 应用已经成了客户的一项核心业务。市场部的人也被这个成功的系统勾起了兴趣,他们希望向购买了某些特定书籍的人群发邮件,告诉他们“又有相关主题的图书到货了”。他们已经有了一个……呃,垃圾邮件系统,只要把顾客名单和邮件地址以XML 的形式交给它就行了。 生成XML要给应用程序建立一个REST 风格的接口。REST 是“表像化状态迁

2010-04-14 16:27:00 574

原创 Rails开发:购物车(5)

第11章 管理再加上一个基本的用户管理系统,当进入站点管理功能时要求用户先登录。只需要根据用户名和密码识别用户即可。只要通过用户识别,该用户就可以使用所有的管理功能。 添加用户不能直接以明文形式保存密码,而是要首先对其进行SHA1 加密,然后保存一个160 位的散列码。当用户再次登录时,我们会对他输入的密码做同样的加密处理,并将加密的结果与数据库中保存的散列码进行比较。为了让系统更

2010-04-14 15:46:00 656

原创 Rails开发:购物车(4)

第10章  付账就目前而言,我们只须获取买主的详细联系信息和付款方式,并用这些信息在数据库里构造一份订单即可。 收集订单信息 订单(order)是由一组订单项(line item)、外加购买交易的详细信息构成的。ruby script/generate scaffold order name:string address:text email:string pay_type:s

2010-04-14 09:58:00 584

原创 Rails开发:购物车(3)

第9章  Ajax初体验 在过去的日子里( 大概2005 年以前) ,浏览器一律被当作“哑设备”对待。当编写基于浏览器的应用程序时,你只管把内容送给浏览器,然后忘记这次会话。另一方面,用户会填一些表单,或是点击超链接,应用程序就会收到一个请求;随后,应用程序会渲染一个完整的页面给用户。然后,整个乏味的过程又从头开始。这也正是Depot 应用到目前为止的工作方式。但测览器并不真的是哑巴(

2010-04-13 11:18:00 1193

原创 Rails开发:购物车(2)

第七章分类显示ruby script/generate controller store index class StoreController   def index    @products = Product.find_products_for_sale  endend class Product   def self.find_products_for_sa

2010-04-13 08:58:00 1062

原创 关于rails中 cookie-session 和 protect_from_forgery 的理解

cookie-sessionrails从2.0版本以后,都默认采用了在browser的cookie中保存session数据的方式,因此保存在session中的数据不能超过4K,否则会出现CookieOverflow的例外。在session中一般保存有user_id和flash的内容,在使用了protect_from_forgery后,还会保存有_csrf_token的字段。此外,可能还会有

2010-04-12 16:03:00 1869

转载 Rails开发:购物车(1)

参与者:buyer seller 第一阶段需求描述:买主使用Depot 浏览待售的商品,选择自己要购买的货物,然后提供必要的信息以创建订单。卖主使用Depot 维护待售的货品列表,确认等待发货的订单,然后将订单标记为“已发货”的状态。 Step1: 页面流Page Flow对应用程序中的主要页面有个整体概念,并且清楚地知道它们之间的导航关系。在开发过程的初期,页面流可能

2010-04-12 13:48:00 890

转载 Rails开发:say hello/goodbye

页面链接....Say ="/say/goodbye">GoodBye!如果我们把应用程序搬到web 服务器的另一个地方,这些URL 就会失效。而且,这实际上是把Rails 对URL 格式的解读直接写进了代码中,而Rails 将来的版本完全有可能改变目前的解读方式。我们可以使用link_to()辅助方法,这个方法可以创建指向一个action 的超链接 Hello, Rails!

2010-04-12 10:07:00 301

转载 Tortoise SVN - How Working Copies Track the Repository

 For each file in a working directory, Subversion records two essential pieces of information in the .svn/ administrative area:what revision your working file is based on (this is called the

2010-04-09 09:52:00 224

国外的支付宝 AlertPay注册教程

Alertpay成立于2004年,是由他的母公司Corporate Wealth Management Inc (CWM INC)建立的。与PayPal一样,AlertPay也是通过子邮件地址有效、安全地发款收款。AlertPay目前发展非常迅猛。国际上的很多网赚项目都开始支持AlertPay收发款。原因是使用PayPal收发款问题比较多,某些不当操作会导致帐号被封。而AlertPay不存在这个问题。 而且从2008-02-07起,AlertPay个人账户收发款均免费,所以,做网赚的朋友,应该马上拥有一个AlertPay帐号。 Alertpay注册使用完全免费。 大家要想做网赚,一定要注册一个Alertpay帐号。但Alertpay不允许注册多个帐号,切记!如果你已经申请了两个帐户,请马上写信给AP公司,请公司删了你那个多余的帐户,才能保住你的帐户!

2010-05-25

MBR fix 引导区修复

很有用的东西,可以修复MBR引导区,在windows命令行下mbrfix /drives 0 fixmbr就可以了

2010-01-06

2009实习风向标2009实习风向标

2009实习风向标2009实习风向标2009实习风向标2009实习风向标

2009-10-11

时间管理的“大块时间”安排

时间管理的“大块时间”安排时间管理的“大块时间”安排

2009-10-11

正则表达式30分钟入门教程

正则表达式30分钟入门教程正则表达式30分钟入门教程

2009-10-11

Lucene基于Java的全文检索引擎简介

Lucene基于Java的全文检索引擎简介Lucene基于Java的全文检索引擎简介

2009-10-11

Makefile 中文教程

Makefile 中文教程Makefile 中文教程Makefile 中文教程Makefile 中文教程Makefile 中文教程

2009-10-11

最重要的 JavaEE 最佳实践

2004 年 IBM® WebSphere® 开发者技术期刊中曾发表过一篇名称类似的文章,本文是其更新版本。这个修正版中考虑了一些不断变化的技术趋势,更重要的是推荐了一些作者认为应当广泛遵循、但尚未广泛遵循的实践。

2009-06-15

Linux信号——IBM教程

IBM的Linux信号教程,以最短的篇幅把信号讲的尽可能清楚,有兴趣学习Linux信号的同学不容错过

2009-06-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除