Django

Code

Ticket #10970 (new)

Opened 11 months ago

Last modified 7 months ago

auto_now_add for DateField evaluetes to datetime.datetime instance

Reported by: summerisgone Assigned to: nobody
Milestone: Component: Database layer (models, ORM)
Version: 1.0 Keywords: DateField, auto_now_add
Cc: summer.is.gone@gmail.com Triage Stage: Accepted
Has patch: 1 Needs documentation: 0
Needs tests: 1 Patch needs improvement: 1

Description

I've set auto_now_add to DateField?, but it evaluates to datetime.datetime instance rather than datetime.date. Here some example:

code in models.py

class Order(models.Model):
    created = models.DateField(auto_now_add=True)

and manage.py shell output:

In [1]: from app.models import Order
In [3]: o = Order()
In [4]: o.save()
In [5]: o.created
Out[5]: datetime.datetime(2009, 5, 1, 2, 53, 32, 280919)

I'm using django-1.0.2-final

Attachments

auto_now_patch.diff (2.1 kB) - added by summerisgone on 06/18/09 14:14:20.

Change History

04/30/09 16:19:54 changed by summerisgone

  • needs_better_patch changed.
  • needs_tests changed.
  • needs_docs changed.

Checked out to revision #10650, bug still there

04/30/09 16:37:06 changed by Alex

  • needs_better_patch set to 1.

This patch doesn't work as DateTimeField relies on inhering this method.

05/01/09 15:43:47 changed by ramiro

  • has_patch set to 1.
  • needs_tests set to 1.

06/16/09 19:47:58 changed by tyson

Surely datetime.date.today() is more concise than datetime.datetime.now().date() - is there a good reason why the latter was selected?

06/18/09 14:14:20 changed by summerisgone

  • attachment auto_now_patch.diff added.

06/18/09 14:15:52 changed by summerisgone

Nope, there wasn't reason to use datetime.now().date() instead datetime.date.today(). I've updated patch, thank you.

08/06/09 17:14:28 changed by Alex

  • stage changed from Unreviewed to Accepted.

Add/Change #10970 (auto_now_add for DateField evaluetes to datetime.datetime instance)




Change Properties
Action