在Ecto中按DateTime查询

JB.*_*JB. 9 elixir ecto phoenix-framework

这是我尝试过的.

date = Ecto.DateTime.from_erl(:calendar.universal_time())
query |> where([record], record.deadline >= ^date)
Run Code Online (Sandbox Code Playgroud)

我也试过了

date = Ecto.DateTime.from_erl(:calendar.universal_time())
query = from m in MyApp.SomeModel,
      where: m.deadline >= ^date,
      select: m
Run Code Online (Sandbox Code Playgroud)

两者都返回相同的消息

value `%Ecto.DateTime{..}` in `where` cannot be cast to type :datetime in query
Run Code Online (Sandbox Code Playgroud)

根据我的理解,我应该在我的查询中使用Ecto.DateTime.也许我错过了一些明显的东西?谢谢!

Jos*_*lim 11

:datetime类型是本机类型,仅适用于元组.如果将列类型设置为Ecto.DateTime模式,则可以使用更高级别的类型,如Ecto.DateTime结构.