Railsアプリに年を保存する方法
-
03-07-2019 - |
質問
年をモデルの1つに保存したいだけです。現時点では、date型のyearというデータベースフィールドがありますが、1年ではなく、日付全体(yyyy-mm-dd)を取得したいようです。
これを保存する最良の方法は何ですか?日付フィールドで、日付ビットを格納するために何らかの方法を使用する場合(その場合、どのように?)、intフィールド、文字列フィールド、または何に?ある意味ではintフィールドを使用するのは間違っているように感じますが、それが最も簡単かもしれません。
解決
可能な日付の範囲に依存します。日付がBCから遠い未来(4桁以上の負数)に移動する場合、整数を格納するのが最も簡単です(ソートの理由のため)。これは、計算や日付の比較を行う場合にも当てはまります。
そうでなければ、おそらく文字列を使用します。
日付フィールドを使用すると、1月1日を使用し、表示時に年の部分を抽出します。
他のヒント
メンテナンス性に基づいて、日付フィールドで選択した任意の日付を使用しないようにアドバイスします。これをarbitrarily意的に選択したことはわかりますが、アプリのその後のメンテナーになりますか?
intを使用するのは、その方法では、保存すること以外に何も保存せず、その意味についてあまり混乱しないからです。
所属していません StackOverflow