我有几个架构(Ecto.Schema) 并为inserted_at,updated_at字段使用 timestamps 。但它默认为Ecto.DateTime并以UTC格式节省时间。是否可以使用本地时间而不是UTC?我已经检查了Ecto.Schema但似乎找不到将其默认为本地时间的方法,而不是UTC。示例:
schema "orders" do
field :number_of_customers, :integer
field :completed, :boolean, default: false
timestamps
end
谢谢!
答案 0 :(得分:1)
根据the docs,您可以使用timestamps
几乎完成任何操作。
使用选项,您可以指定:type
,或者您甚至可以注册将使用:autogenerate
生成的自定义函数。
但是我会将时间戳保留为UTC,因为这是一种标准方式。奇怪的是它不适合你。呼叫Ecto.DateTime.utc
只需从操作系统获取正确的时区信息,并以UTC显示正确的时间。如果不是这样,那么您的操作系统可能有不正确的时区?