这是我尝试过的。
date = Ecto.DateTime.from_erl(:calendar.universal_time())
query |> where([record], record.deadline >= ^date)
我也试过了
date = Ecto.DateTime.from_erl(:calendar.universal_time())
query = from m in MyApp.SomeModel,
where: m.deadline >= ^date,
select: m
两者都返回相同的消息
value `%Ecto.DateTime{..}` in `where` cannot be cast to type :datetime in query
据我了解,我应该在查询中使用Ecto.DateTime。也许我缺少明显的东西?谢谢!
最佳答案
:datetime
类型是 native 类型,仅适用于元组。如果您在架构中将列类型设置为Ecto.DateTime
,它将能够使用更高级别的类型,例如Ecto.DateTime结构。
关于elixir - 在Ecto中按DateTime查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30245703/