Elixir和Ecto中的DateTime.now

dar*_*rko 9 elixir ecto phoenix-framework

我想在没有第三方库的情况下获得Phoenix/Elixir的当前日期时间戳.或者简单地说,我想要类似的东西DateTime.now().我怎样才能做到这一点?

Dog*_*ert 16

Ecto必须Ecto.DateTime.utc/1以UTC 格式获取当前时间:

iex(1)> Ecto.DateTime.utc
#Ecto.DateTime<2016-09-05 13:30:04>
iex(2)> Ecto.DateTime.utc(:usec) # include microseconds
#Ecto.DateTime<2016-09-05 13:30:18.367318>
Run Code Online (Sandbox Code Playgroud)

如果您想要本地系统时区的当前时间,您可以:

Ecto.DateTime.from_erl(:erlang.localtime)
Run Code Online (Sandbox Code Playgroud)


Gab*_*Prá 6

作为外生3, Ecto.DateEcto.TimeEcto.DateTime不再存在,因为说这里。

但是,Elixir现在附带应使用的DateTimeDateNaiveDateTime

iex(1)> DateTime.utc_now
#DateTime<2019-01-14 12:05:52.271492Z>
Run Code Online (Sandbox Code Playgroud)