我有一个模型,它存储每个都有开始时间的事件。
开始时间由 rails 作为 Time 处理,但在 Postgres 中存储为 datetime(我假设),并且 rails 只是忽略日期并将其存储为 2000-01-01 ...
我遇到的问题是订购它,以便在午夜之后开始的事件之后而不是之前出现。我如何对它们进行不同的排序并在 24 小时内拆分事件,以便在晚上事件的后半部分出现第一个上午 12 小时的事件。(如果那样的话)
有任何想法吗?
c=Event.last
c.event_items.order(:time_start)
哪个 ORDER BY \"event_items\".time_start ASC"
+-----+----------+-----------+-------------------------+---------+-------------------------+-------------------------+
| id | event_id | artist_id | time_start | area_id | created_at | updated_at |
+-----+----------+-----------+-------------------------+---------+-------------------------+-------------------------+
| 155 | 63 | 111 | 2000-01-01 00:40:00 UTC | | 2013-08-24 21:21:57 UTC | 2013-08-26 00:07:44 UTC |
| 153 | 63 | 133 | 2000-01-01 01:10:00 UTC | | 2013-08-24 21:21:57 UTC | 2013-08-26 00:07:44 UTC |
| 152 | 63 | 128 | 2000-01-01 02:00:00 UTC | | 2013-08-24 21:21:57 UTC | 2013-08-26 00:07:44 UTC |
| 151 | 63 | 148 | 2000-01-01 22:10:00 UTC | | 2013-08-24 21:21:57 UTC | 2013-08-26 00:07:44 UTC |
| 194 | 63 | 124 | 2000-01-01 23:00:00 UTC | | 2013-08-26 00:07:44 UTC | 2013-08-26 00:07:44 UTC |
| 154 | 63 | 98 | 2000-01-01 23:50:00 UTC | | 2013-08-24 21:21:57 UTC | 2013-08-26 00:07:44 UTC |
+-----+----------+-----------+-------------------------+---------+-------------------------+-------------------------+
我希望从 12 小时(24 小时时钟)之前开始的日期在 12 小时 + 之后......
例如,在本例中,我希望订单为 22:10、23:00、23:50、00:40、01:10、02:00