Timezone.now()vs datetime.datetime.now()

Dav*_*542 13 python django datetime django-timezone

我什么timezone.now()时候应该使用django ,什么时候应该使用python datetime.datetime.now()

例如,在下面INSERT哪个更有意义?

- Product.objects.create(title='Soap', date_added=datetime.datetime.now())
- Product.objects.create(title='Soap', date_added=timezone.now())
Run Code Online (Sandbox Code Playgroud)

是否有关于何时使用每种方法的经验法则?

dge*_*gel 20

只是一直使用timezone.now().Django现在有时区支持,需要时区'识别'日期时间对象.datetime.now()将返回一个时区天真的对象,而timezone.now()将返回一个时区感知对象.

  • 更确切地说,`timezone.now()`将基于`USE_TZ`设置返回一个天真或意识到的`datetime`. (9认同)
  • 当然:https://docs.djangoproject.com/en/1.9/topics/i18n/timezones/#naive-and-aware-datetime-objects (3认同)