0
航空会社予約システム(Sabre/Galileo/AmadeusのようなGDS)から来る日付を変換するコンパクトなソリューションを探しています年 - 例えば。 23JUNを標準の日付にする必要がありますが、Rubyですぐに決定する必要があります。 (これらのシステムの日付は、今日から最大355日しかないため、2012年12月12日が2012年12月12日であると仮定して、12月を2012-05-05の代わりに2013-05-12と解釈する曖昧さはありません)。今日が2012年12月25日で01JANとして日付が入力されている場合、これは01JAN2013になります。今日が21JUL 2012の場合、01JANの入力日付も今年の過去日付である01JAN 2013になります。Rubyで正しい年を適用したDDMON(例:23JAN)の日付形式を完全な日付に変換
だから私は次のような何かを行うことができます。
t = DateTime.now
crsdate = DateTime.strptime("23JAN","%d%b")
if crsdate >= t
# Year is current year
else
# Year is next year
end
これを行うにはよりエレガントな方法はありますか?
Activesupportには、「過去?」や「未来」などのFWIWがあります。 – steenslag
私は知っていますが、Railsタグはなかったので、私は純粋なRuby答えを出しました。 –
マイケルとsteenslagに感謝 - これは実際に2.3.5のdatanoise webservice apiを実装しているコントローラのコードの一部です。過去の使用方法に興味がありますか? - まだレール初心者です。 – Surge