web-dev-qa-db-ja.com

DateTime.nowはElixirとEctoにあります

サードパーティのライブラリを使用せずに、Phoenix/Elixirで現在の日時スタンプを取得したい。または、単にDateTime.now()のようなものが必要です。どうやってやるの?

10
darko

エクトは 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>

ローカルシステムのタイムゾーンで現在の時刻が必要な場合は、次の操作を実行できます。

Ecto.DateTime.from_erl(:erlang.localtime)
16
Dogbert

Ecto 3の時点で、Ecto.DateEcto.TimeおよびEcto.DateTime記載されているように、もはや存在しません ここに。

ただし、Elixirには DateTimeDate 、および NaiveDateTime が付属しており、これらを使用する必要があります。

iex(1)> DateTime.utc_now
#DateTime<2019-01-14 12:05:52.271492Z>
8
Gabriel Prá