Apr 14 2008
打造可复用的版权信息
Posted by admin
通常我们会在网站或blog里放上自己的版权信息如:
© Copyright <%= current_year -%>. All Rights Reserved.
这个current_year辐助方法定义在application里的helper里。定义如下:
# add to application_helper.rb
module ApplicationHelper
def current_year
Time.now.strftime('%Y')
end
end
但这样,只能得到当年的时间,但下一年呢,再一下年呢,网站能赚钱了,运营十年,二十年,我们难道要每年都去修改代码?不,我们坚决不这样做,Rails就是don’t repeat yourself。我们来创建一个可复用的current_year方法吧。
def current_year
Time.now.year
end
def year_range( start_year = current_year )
[start_year, current_year].sort.uniq.join(’-')
end
将参数传给start_year变量,再将起始年和当年用join方法连接起来。如果不传递参数,则用current_year输出当年的年数。
使用
<%= year_range(2005) -%>
显示结果是 2005-2008。
这个helper已经被作者制作成gem了,可以从GitHub下载。
http://github.com/robbyrussell/year_after_year/
文章来源: DRY(a): Year After Year

April 14th, 2008 at 10:54 pm
好方法