Piece of Ruby shop.

開発した商品のリリースとアナウンスをします。

Zinbeiの令和対応

「変更点」
・自動的に5月1日がくると「令和元年5月1日」と表示ができるようにしました。
・あと6日ほどあるので、しばらくは平成のままです。

「今後」
・令和が来た日に、カウントダウンバージョンを削除→カウントダウン機能を削除します。
・1ヶ月以内に令和がすぎて、6月に入る前に、不要なIF文を消します。
・1年経過して、令和2年になるまえに、切り替えの処理を書きます。

以上です。

※ まぁ、年号のためでもあり、ちょくちょく更新します。

#coding: sjis
# frozen_string_literal: true


require 'date'
require 'time'

#~~~抜粋~~~~

# 5月1日、令和が施行されたら消す
z = Time.mktime(2019,5,1)
print '(令和) 2019年5月1日まであと: '
print ((z - x) / 60 / 60 / 24).round
puts ' 日です'
# ------------------------------

# ------------------------------
td = Date.today
nen = ["平成","令和"]
# ------------------------------

# 5月中に不要なif文を取り除く
if "#{td.year}" + "#{td.month}" =~ /^20195$/
  puts (nen[1] + "#{(td.year - 2018)}".gsub(/[1]/,"")+"#{td.month}"+"#{td.day}") +" "+t.to_date.jisx0301
else
  puts (nen[0] + "#{td.year - 1988}"+"#{td.month}"+"#{td.day}") +" " +t.to_date.jisx0301
end

今回の更新で書いたコードの前半。後半はリファクタリングしてあります。

おそらくRailsでも、Rubyでなんとかなる範囲。安易にRubyGemsに頼るとパフォーマンス低下の原因になるかもしれない。

Copyright © 2007-2020 Takayuki Kamiyama. All Rights Reserved.