Ruby on rails 查询在小时创建的\u
如何查询在特定时间创建的记录?我是否需要为每条记录在db中添加一个小时列?Ruby将在.hour为created_返回一个很好的值,但我不能在如下查询中使用它:Ruby on rails 查询在小时创建的\u,ruby-on-rails,Ruby On Rails,如何查询在特定时间创建的记录?我是否需要为每条记录在db中添加一个小时列?Ruby将在.hour为created_返回一个很好的值,但我不能在如下查询中使用它: results = Record.where("created_at.hour = ?", the_hour) 尝试: 您需要使用MySQLhour函数从时间戳中提取小时。仅供将来参考 如果您碰巧使用SQLite,其中从时间戳提取小时的hour函数不可用,请使用此解决方案 def find_record_by_created_at_
results = Record.where("created_at.hour = ?", the_hour)
尝试:
您需要使用MySQL
hour
函数从时间戳中提取小时。仅供将来参考
如果您碰巧使用SQLite,其中从时间戳提取小时的hour
函数不可用,请使用此解决方案
def find_record_by_created_at_hour(certain_hour)
Record.all.select {|record| record.created_at.hour == certain_hour }
end
你所拥有的会很好用的。变量
小时数是整数吗?小时数是整数。错误消息:Mysql2::error:where子句中的未知列“created_at.hour”问题是Rails正在尝试查找名为created_at.hour
的列。Rails不明白.hour
实际上是一种方法。
def find_record_by_created_at_hour(certain_hour)
Record.all.select {|record| record.created_at.hour == certain_hour }
end