私のアプリケーションでは、入力時と表示時の両方で、「未定義の未来の日付」を意味する空白の日付フィールドをサポートしたいと考えています。私はこれをデータベースに格納しており、日付がnil以外の日付の前にnilソートしているので、 "1/1/10000"を返す "max_value"メソッドを実装するために、Dateクラスにモンキーパッチを適用することにしました将来不確定な日付を表す)。私は+、 - 、to_s、およびこの値で適切に動作する他の演算子/メソッドをオーバーロードしています。私はモデルにbefore_saveコールバックを追加して空の日付をDate.max_valueに変換しました。これはすべてうまくいくように思えますが(私が解決しようとしているいくつかのバグは例外ですが)、クラスを猿でパッチすることなくこれを行う良い方法がありますか?モンキーパッチ日付クラスは最高のオプションですか?
0
A
答えて
3
あなたが探している値はnullです。 Dateのような基本クラスをオーバーライドするだけで、トラブルを救うことができます。
が代わりにクエリ
SELECT * FROM Mystery_Events ORDER BY ISNULL(some_event_date,'1/1/10000') ASC
でそれを行う、あなたは答えのために
ORDER BY (case WHEN some_event_date IS NULL THEN 1 ELSE 0 END), some_event_date, some_other_sorting_field_to_give_order_to_the_nulls ASC
関連する問題
- 1. 最高の時間の日付形式
- 2. SQL日付オプション
- 3. pyspark最高のamtで日付を検索します。
- 4. Pythonの:どのようにモンキーパッチ(スワップ)クラス
- 5. jQuery最終日の日付
- 6. MySQLのクエリ自己最高の日付のために参加
- 7. 最高(最新)と最低(最も早い)日付を見つける方法
- 8. MySQLの日付フィールドのオプションの月または日PHP
- 9. Linqを使用して異なるオプションと最新の日付でフィルタリングする
- 10. Java 8で使用する日付クラスはどれですか?
- 11. JavaScriptでモンキーパッチを理解するには
- 12. SSIS Excel最後の行にない最初の行で日付が空白=>日付は常に空です
- 13. テーブルの最古の日付と最新の日付を返すTSQLクエリ
- 14. SQL Serverの最終日付
- 15. モンキーパッチはユニットテストのための組み込み関数ですか?
- 16. jqueryカレンダーの最小日付と最大日付を含めます。
- 17. 日付ではない日付と文字列を比較する最も良い方法は何ですか?
- 18. 最近の日付から翌年の同じ日付の日付を検索する
- 19. なぜPythonで日付クラスがあるのですか?
- 20. Android 1.5のonDateChanged()の日付の最大値と最小値の日付ピッカー?
- 21. より前の日付から日付と日付まで
- 22. 指定された日付から最初の日付を取得する
- 23. C++に標準の日付/時刻クラスはありますか?
- 24. 剣道の日付ピッカーは、どのようにして最低限の日付で日付を確認するのですか?
- 25. 最も移植性の高いSQLの日付文字列形式
- 26. 絶対最小日付
- 27. SQL最大日付クエリ
- 28. 今日のmysqlと同等の最小日付と最小日付を取得する方法
- 29. 最高のPHPのconfig/iniのクラス?
- 30. 最後の日曜日の日付を見つける現在の日付から
感謝を使用することができ、そして私はあなたと1つのビットを反対していません。私はモンキーパッチに挑戦しようとすると何度も噛まれ、やがて逃げる方法を見つけられなくなりました。私はそれが悪い考えであることをちょっと知っていました。それが私が質問して、他のアプローチを聞く理由です。しかし、それは全体的に啓発的な経験でした。 –
しかし、私は、昨日と明日のメソッドのためのいくつかのオーバーライドを残しました。私は、彼らが遅い間に間違った価値を生み出すように見えることを発見しました - ローカル値の代わりにUTC値を生成するような、タイムゾーンの問題があると思われます。 –
私はいつも昨日/ tomarrowが+/- 24時間の短い手だったと思った...これは本当ですか? – colinross