Thank you all so much! this sums it up, once and for all !
So basically it’s just great that Ecto
is enforcing saving DateTime values in utc
with the utc_datetime
, which I feel really positive about since it’s a standard development practice. I’ve seen no other library/framework enforcing
it.
I made the following global changes to my Phoenix 1.5
app to use utc_datetime
instead of naive_datetime
by Ecto
, both in schemas and migrations for anyone who may find it useful:
In config.exs
, I added this:
config :myapp, MyApp.Repo, migration_timestamps: [type: :utc_datetime]
created a new schema.ex
with the following code:
defmodule MyApp.Schema do
defmacro __using__(_) do
quote do
use Ecto.Schema
@timestamps_opts [type: :utc_datetime]
end
end
end
And in my models
everywhere, I replaced use Ecto.Schema
with use MyApp.Schema
And, done!