Elixir Ecto Phoenix - 比较字符串日期格式“YYYY-MM-DD”和#DateTime <2017-12-01 13:31:14.987000Z>

问题描述 投票:0回答:1

我正在尝试在我的Ecto查询中实现日期范围,其中日期范围是格式为"YYYY-MM-DD"的字符串日期,并且数据库中相应的created_at日期是#DateTime<2017-12-01 13:31:14.987000Z>格式。

我设置了范围比较查询,我唯一的问题是弄清楚如何将我的日期字符串转换为相同的#DateTime格式。

date datetime elixir phoenix-framework ecto
1个回答
0
投票

你可以使用DateTime.from_iso8601/1

date = "2015-01-23"
case DateTime.from_iso8601("#{date}T00:00:00Z") do
    {:error, error} -> error
    {:ok, dt} -> 
                 # .... do stuff 
end

如果您需要操作日期和时间,格式,解析等,您可能会查看Timex,因为它涵盖了很多与日期和时间相关的常见事项。

© www.soinside.com 2019 - 2024. All rights reserved.