2017-09-15 65 views
1
月初

着能够使用地图更新的语法从Ecto.Date获取月份药剂

得到月初
Ecto.Date.utc => #Ecto.Date<2017-09-15> 
Ecto.Date.utc.beginning_of_month requires => 2017-09-01 

回答

2

您可以简单地设置的day价值1

iex(1)> today = Ecto.Date.utc 
#Ecto.Date<2017-09-15> 
iex(2)> %{today | day: 1} 
#Ecto.Date<2017-09-01> 

Ecto.Date在最新的Ecto中已弃用,因此如果您迁移到Elixir核心的新结构Date,则同样的技术也可以使用它:

iex(3)> today = Date.utc_today 
~D[2017-09-15] 
iex(4)> %{today | day: 1} 
~D[2017-09-01]