`
yangzhihuan
  • 浏览: 165324 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论
文章列表
周五的时候把网站升级到Rails 2.3.12,本来在本地测试都没有问题的,但是在服务器上遇到一个非常诡异的问题,足足用了一天一夜的时间。 本地:   Mac OS X 10.7,Ruby 1.8.7,Rails 2.3.12 服务器:Ubuntu 8.04,Ruby Enterprise Edition 1.8.7,Rails 2.3.12 在服务器上,但凡是在 routes.rb 里面定义的 named route 在调用的时候都会出问题: #routes.rb map.resources :members,:member => { :articles => :get ...
一般情况下,如果你使用gmail的话,都是这样配置的: ActionMailer::Base.smtp_settings = { :address => "smtp.gmail.com", :port => 587, :domain => "your_domain.com", :user_name => "your_name@gmail.com", :password ...
今天写代码的时候,客服MM向我反馈了一个问题,这个问题本身是很容易解决的,但是出现这个问题时的提示信息有些令人郁闷,ActiveRecord的信息显示在页面时,只看到了一堆I18n无法找到相应语言下定义的提示信息。 但是我的应用支持中文和英文,我仔细检查了locales下的en.yml和zh-CN.yml,明明是有配置相应的提示信息的,却显示无法找到。一番检查之后,我认为问题在于文件加载先后顺序的地方出事了,提示信息,我是在类定义中写的,如下: class EntryAttachment < Attachment #不如惊讶,这是paperclip的方法 has_atta ...
好久没写blog了。 今天搞了半天才搞定 Nginx + SSL的配置,主要是对这方面不太理解,导致一开始的思路就错了,我原以为在Nginx下的一个server里同时监听 80 和 443端口,就可以让服务器自动处理这两种不同链接,如: http://www.domain.com 和 https://www.domain.com 。 但是在nginx.conf里面打开了 ssl on:之后,所有的链接变成https的,也就是变成了强制使用ssl协议了,而且使用了Rails的ssl_requirement插件后,会出现死循环的重定向,就是 http://www.domain.com 跳转到 h ...
今天跟 Arbow 同学聊JRuby用的人多不多,然后问我为啥不用JRuby,觉得我毕竟有这么多年做Java的经验,就这个荒废了,实在有些可惜来着,我后来想想,觉得实在也有些可惜,毕竟当年在Java身上下过不少功夫,虽然水平不怎么样,毕竟是有些可以的。   我主要写web应用程序,对比Java + 一票框架和Ruby + Rails,我想我是不可能再写用Java来写web项目的了(当然世是无绝对,这里说的是一般情况)。   那么我想在其它领域有啥Java的用武之地呢?我平时关注,又有兴趣的,当然是智能手机的应用程序开发啦,而符合这个条件的当然是现在的当红炸子鸡 -- Android   ...
今天在看fireflyman 同学的一篇blog Ruby排序算法收集 时 kaka2008 回复说觉得 a,b=b,a 这样的写法相当的奇妙,忽然想起了那逝去的大学时光,那时候刚刚进大学,还不明白编程是怎么回事,就已经要学习 C 语言了。     那时候 C 语言的课里有一个题目我的印象是很深刻的,就是在不使用临时变量的情况下,怎么样实现  a,b=b,a ,a,b是 int 类型(估计看到这一句的你偷偷地笑了,你懂的)。   那时候连编程是什么都还没有弄懂的同学们,都对会实现这个为荣,那时真欢乐呀 :)   毕业之后,一直都是做Java,后来觉得做了几年的Java没进步,就改用 ...
最近项目的前端使用了jQuery,表单的前端验证用的是jQuery Validate,用起来很简单方便,一直都很满意的。 前段时间,根据需求为表单中的 textarea 类型的元素加上了html富文本编辑器,用的是CKEditor,功能强大,定制方便,也很满意。 不过用CKEditor增强过的 textarea 元素,这个字段要求是非空的,在jQuery Validate总是验证不通过,原因就是在 CKEditor 编辑器填写了内容之后,编辑器并不是立即把内容更新到原来的 textarea 元素中的,我没仔细看源代码,试过一种情况就是每一次提交不通过,第二次提交就可以通过的,貌似编辑器是在 ...
大家都知道想在Rails下自定义错误显示的页面是修改 rescue_action_in_public 这个方法,我之前也写过一篇blog介绍在Rails 2.X下如何自定义错误信息页面 http://yangzhihuan.iteye.com/blog/577624 不过在 Rails 3中这个方法的位置改变了,上文提到的链接中的方法已经无效了,其它还是修改  rescue_action_in_public 这个方法,只不过这个方法不再放在 ActionController::Rescue 这个module里面了,请看代码: #以下的代码放在 config/initializers 文件夹 ...
在新项目中使用了paperclip这个文件上传插件,一切都很满意,但是对于它不能自定义文件名就比较郁闷了,一直想实现这个功能,不过一直没时间去看paperclip的源代码(其实因为懒)。 我说的自定义文件名,不是网上多数教程所说的修改文件存储的文件夹路径,打个比方,我上传了一个叫做 test.gif 的文件,服务器上存储的文件的文件名同样是 test.gif ,而我希望是系统随机地指定一个文件名给上传的文件,我希望在服务器上存储的文件名不是原来的 test.gif,而是 2010070100000.gif 这种由我指定的文件,这样可以统一文件,防止用户上传的文件是一些乱七八糟的名字,而且我们的 ...
一个基于Sinatra的小程序 前些天有一个需求,需要写一个小程序来收集用户的Email,非常的简单: 1.一个用户输入Email的界面 2.提交Email表单后,提示用户已经记录了他/她的Email,然后跳转到首页. 这是一个简单得不能再简单的小功能了,但是由于这个功能是要求放在一个独立的服务器上的,跟现有的项目也毫不相干的,我并不想在现有的Rails项目中增加这个功能.我首先想到的是新建一个Rails项目实现这个功能,动手之前我又犹豫了,这么一个简单的东西,要如此大动干戈么? 为什么说是大动干戈呢?Rails是一个全能的Web框架,提供了许多方便快捷的功能,也正是因此而凌驾于基本Web ...
今天有一个需求要单独地使用ActiveRecord,但是我的机器上安装了几个不同版本的ActiveRecord,之前一直是在Rails中使用ActiveRecord,可以指定版本号,我也一直没有留意使用require怎么样使用特定版本的gem,一下子就傻眼了,感觉基本功真是不够扎实啊. 到google找到了这篇 http://www.huangzhimin.com/tags/32-RubyGems/entries require 'rubygems' gem 'activerecord', '2.3.2' require 'activerecord' 记录在案,备忘.
因为有一个新的项目打算使用Rails 3.0 beta,所以先试试从Rails 2.3.5升级到Rails 3.0 beta. 请参考官方的release note http://guides.rails.info/3_0_release_notes.html JavaEye也有一篇介绍Rails 3的 http://www.iteye.com/topic/591833 首先要安装Rails 3.0 beta,ruby的版本是1.8.7和1.9.x都可以,我用的是Ruby Enterprise Edition 1.8.7 安装Rails之前,最好先升级一下rubygem,现在最新的版本是1. ...
由于公司要搞blog,昨天晚上搞了一个晚上才在服务器上搭建好一个blog环境,真是汗颜啊,主要是自己对php的部署不熟悉,记录一下.     用到的软件:   Nginx 0.8.34 wordpress 2.9.2 mysql 5 php 5.3.2 就这么多... Nginx和PHP都是自己编译的,这个也没有什么好说的了. wordpress的安装可以考虑官方的wiki,写得很详细了 http://codex.wordpress.org.cn/WordPress的安装过程 PHP编译的时候要注意一下,必须得把 --with-mysql=/xx/oo 这 ...
  一直都在关注着智能手机,觉得这个圈子真是越来越好玩了.     万众期待的iPhone 第4代.   没有任何官方消息,但正因为这样,所以传闻满天地飞,有的说OS 4会有多任务已经是板上钉钉的事,有的说第4代iPhone会改变分辨率变成 ...
前些天我在做一个支付集成的接口,对方返回的结果串里面有一个 errors 的字段,用来记录出错时候的错误代码,我需要对结果进行保存,当时我也没多想,直接建了一个model用来保存返回的结果,为了方便容易记,而且可以用一些动态的方法来对返回的串给model做一些动态的赋值,所以model的字段名直接跟返回的结果串中的字段同名. 就因为这个 errors ,又导致了一个杯具的发生.因为在ActiveRecord中有一个叫做 errors 的Hash用来保存 ActiveRecod 验证时的出错信息,很多方法都会对 errors.empty? 做判断来决定是否操作成功的,比如 save 方法. 就 ...
Global site tag (gtag.js) - Google Analytics