Django

Code

Show
Ignore:
Timestamp:
07/29/08 00:09:29 (4 months ago)
Author:
mtredinnick
Message:

Fixed #7560 -- Moved a lot of the value conversion preparation for
loading/saving interactions with the databases into django.db.backend. This
helps external db backend writers and removes a bunch of database-specific
if-tests in django.db.models.fields.

Great work from Leo Soto.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/tests/regressiontests/model_regress/models.py

    r7359 r8131  
    2929class Party(models.Model): 
    3030    when = models.DateField() 
     31 
     32class Event(models.Model): 
     33    when = models.DateTimeField() 
    3134 
    3235__test__ = {'API_TESTS': """ 
     
    6972[datetime.date(1998, 12, 31)] 
    7073 
     74# Check that get_next_by_FIELD and get_previous_by_FIELD don't crash when we 
     75# have usecs values stored on the database 
     76# 
     77# [It crashed after the Field.get_db_prep_* refactor, because on most backends 
     78#  DateTimeFields supports usecs, but DateTimeField.to_python didn't recognize 
     79#  them. (Note that Model._get_next_or_previous_by_FIELD coerces values to 
     80#  strings)] 
     81# 
     82>>> e = Event.objects.create(when = datetime.datetime(2000, 1, 1, 16, 0, 0)) 
     83>>> e = Event.objects.create(when = datetime.datetime(2000, 1, 1, 6, 1, 1)) 
     84>>> e = Event.objects.create(when = datetime.datetime(2000, 1, 1, 13, 1, 1)) 
     85>>> e = Event.objects.create(when = datetime.datetime(2000, 1, 1, 12, 0, 20, 24)) 
     86>>> e.get_next_by_when().when 
     87datetime.datetime(2000, 1, 1, 13, 1, 1) 
     88>>> e.get_previous_by_when().when 
     89datetime.datetime(2000, 1, 1, 6, 1, 1) 
    7190""" 
    7291}