Rails - 按小时排序
@events = Event.all(:order => "date DESC")
按日期对我的事件进行排序,使用 datetime
列。
是否可以不按日期而仅按小时排序? (我正在起诉 sqlite3
数据库)
谢谢!
@events = Event.all(:order => "date DESC")
to order my events by date, a datetime
column.
Is it possible to order them not by date, but only by hour? (I'm suing sqlite3
database)
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于 SQLite,
请小心使用,因为它会忽略日期。 (请参阅下面的“稍后”。)
只有一个日期是 1 月 2 日。
稍后。 。 .
我意识到您想按小时排序,而不是按时间排序。这个有问题的要求有不同的表达方式,并且排序也不同。
最后两行按小时正确排序,按时间错误排序。
再晚一点。 。 .
OP部署在Heroku上,不支持SQLite。要按小时降序排序,OP 可能需要类似
“停止使用一个平台进行开发和使用不同的平台进行部署”之类的内容。
For SQLite,
Use that with care, because it ignores the date. (And see "Moments later" below.)
Only one of the dates is on Jan 2.
Moments later . . .
I realized you wanted to sort by hour, not by time. That questionable requirement takes a different expression, and sorts differently.
The last two rows are sorted correctly by hour, incorrectly by time.
Still later . . .
The OP deploys on Heroku, which doesn't support SQLite. To sort by hour descending, the OP probably needs something like
And stop using one platform for development and a different platform for deployment.
由于 Heroku 使用 PostgreSQL,因此您可以使用:
如果您在本地使用 SQLite3 并使用 PostgreSQL 进行部署,那么您将在开发时遇到问题 - SQL 在平台之间不一致。
Since Heroku uses PostgreSQL, you can use:
You'll have problems developing if you use SQLite3 locally and PostgreSQL for deployment - SQL is not consistent between platforms.