Opened 15 years ago
Closed 15 years ago
#13630 closed Bug (fixed)
DatabaseOperations doesn't have same constructor with SQLITE and PostgreSQL backend
| Reported by: | Cédric RICARD | Owned by: | nobody |
|---|---|---|---|
| Component: | Database layer (models, ORM) | Version: | 1.2 |
| Severity: | Normal | Keywords: | |
| Cc: | ian.g.kelly@… | Triage Stage: | Accepted |
| Has patch: | yes | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
Using sqlite3 backend on Django 1.2.1, the DatabaseOperations object is constructed without any parameter (no change from older versions).
Example:
from django.db import backend backend.DatabaseOperations().quote_name(my_value)
But using postgresql_psycopg2 backend, the DatabaseOperations constructor need a connection as parameter :
Example:
from django.db import backend, connection backend.DatabaseOperations(connection).quote_name(my_value)
So this is not possible to have a code working with all backends.
Attachments (1)
Change History (7)
comment:1 by , 15 years ago
| Triage Stage: | Unreviewed → Design decision needed |
|---|
comment:2 by , 15 years ago
| Triage Stage: | Design decision needed → Accepted |
|---|
comment:3 by , 15 years ago
| Cc: | added |
|---|
comment:4 by , 15 years ago
| Severity: | → Normal |
|---|---|
| Type: | → Bug |
comment:5 by , 15 years ago
| Has patch: | set |
|---|
Note:
See TracTickets
for help on using tickets.
Actually, both PosgreSQL backends are the only ones accepting the connection parameter in their
__init__methods, Oracle, MySQL suffer from the same issue as reported by this ticket. We have an inconsistency here.