Skip to content

django: implement DatabaseOperations.date_interval_sql() #184

@timgraham

Description

@timgraham

Example failure:

======================================================================
ERROR: test_update_with_timedelta (timezones.tests.NewDatabaseTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/tim/code/django/tests/timezones/tests.py", line 515, in test_update_with_timedelta
    Event.objects.update(dt=F('dt') + timedelta(hours=2))
  File "/home/tim/code/django/django/db/models/manager.py", line 82, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "/home/tim/code/django/django/db/models/query.py", line 741, in update
    rows = query.get_compiler(self.db).execute_sql(CURSOR)
  File "/home/tim/code/django/django/db/models/sql/compiler.py", line 1462, in execute_sql
    cursor = super().execute_sql(result_type)
  File "/home/tim/code/django/django/db/models/sql/compiler.py", line 1120, in execute_sql
    sql, params = self.as_sql()
  File "/home/tim/code/django/django/db/models/sql/compiler.py", line 1437, in as_sql
    sql, params = self.compile(val)
  File "/home/tim/code/django/django/db/models/sql/compiler.py", line 405, in compile
    sql, params = node.as_sql(self, self.connection)
  File "/home/tim/code/django/django/db/models/expressions.py", line 428, in as_sql
    return DurationExpression(self.lhs, self.connector, self.rhs).as_sql(compiler, connection)
  File "/home/tim/code/django/django/db/models/expressions.py", line 474, in as_sql
    sql, params = self.compile(self.rhs, compiler, connection)
  File "/home/tim/code/django/django/db/models/expressions.py", line 465, in compile
    return compiler.compile(side)
  File "/home/tim/code/django/django/db/models/sql/compiler.py", line 405, in compile
    sql, params = node.as_sql(self, self.connection)
  File "/home/tim/code/django/django/db/models/expressions.py", line 683, in as_sql
    return connection.ops.date_interval_sql(self.value), []
  File "/home/tim/code/django/django/db/backends/base/operations.py", line 102, in date_interval_sql
    raise NotImplementedError('subclasses of BaseDatabaseOperations may require a date_interval_sql() method')
NotImplementedError: subclasses of BaseDatabaseOperations may require a date_interval_sql() method

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions