Luke Plant
f2ebb169f9
Small code clarification in prefetch_related code using better variable names
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17162 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-29 12:50:10 +00:00
Aymeric Augustin
866c229f52
Fixed #17294 -- Supported nullable DateTimeFields when time zone support is enabled. Thanks pressureman for the report.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17148 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-25 09:25:43 +00:00
Aymeric Augustin
74b836abf5
Fixed #17062 -- Ensured that the effect of SET TIME ZONE isn't lost when the first transation is rolled back under PostgreSQL. Thanks Anssi for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17128 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-20 16:12:33 +00:00
Aymeric Augustin
9c30d48b45
Fixed #17263 -- Added a warning when a naive datetime reaches the database layer while time zone support is enabled.
...
After this commit, timezones.AdminTests will raise warnings because the sessions contrib app hasn't been upgraded to support time zones yet.
This will be fixed in an upcoming commit.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17117 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-19 23:27:20 +00:00
Aymeric Augustin
d0eb4693ab
Fixed #15255 -- Ensured createcachetable honors database routers.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17114 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-19 19:56:31 +00:00
Aymeric Augustin
549c495875
Used symbolic constants for psycopg2 isolation levels.
...
Django used the value 1 = ISOLATION_LEVEL_READ_UNCOMMITTED in some places, but
PostgreSQL doesn't provide "read uncommited", it uses "read committed" instead:
http://www.postgresql.org/docs/9.1/static/transaction-iso.html . For clarity,
this commit uses ISOLATION_LEVEL_READ_COMMITTED = 2 where 1 was previously used.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17112 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-19 14:18:44 +00:00
Aymeric Augustin
9b1cb755a2
Added support for time zones. Thanks Luke Plant for the review. Fixed #2626 .
...
For more information on this project, see this thread:
http://groups.google.com/group/django-developers/browse_thread/thread/cf0423bbb85b1bbf
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17106 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-18 13:01:06 +00:00
Karen Tracey
b8353016b7
Fixed #13640 : Avoid generating an exception when a model has an attribute named 'evaluate'. Thanks LukaszKorzybski and tobias.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17093 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-13 15:09:08 +00:00
Karen Tracey
63ba472cc4
Fix #13864 : Removed database error raised when force_update is requsted on save of an inherited model with no fields of its own. Thanks fva, gregmuellegger, and markb1.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17088 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-12 19:06:39 +00:00
Alex Gaynor
396fcaaef9
Remove all relative imports. We have always been at war with relative imports.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17009 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-18 00:47:49 +00:00
Alex Gaynor
544a8372fd
Remove several more relative imports.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17007 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-17 16:56:18 +00:00
Ramiro Morales
5f2be4ecbb
Fixed #17056 -- Tweaked insert SQL clause generation so a corner case doesn't fail with Oracle.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16997 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-16 20:06:59 +00:00
Aymeric Augustin
246580573d
Fixed #12308 -- Added tablespace support to the PostgreSQL backend.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16987 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-14 21:49:43 +00:00
Aymeric Augustin
06d9b82a27
Fixed #16906 -- Format datetimes with str/unicode instead of strftime where possible: it's faster and it works for all dates.
...
Also ensured that datetime_safe is used wherever strftime is called on dates/datetimes that may be before 1900.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16978 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-13 19:23:45 +00:00
Julien Phalip
c58e5724bc
Fixed a couple of `assert` syntax warnings mistakingly introduced in r16966 and added some tests to prevent future regressions. Thanks to Anssi Kääriäinen for the report.
...
Refs #12467 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16971 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-13 11:53:59 +00:00
Julien Phalip
3b22c68343
Fixed #12467 -- Made the model data validation for `DateField` and `DateTimeField` more useful by actually telling what was the value that failed. Also did a bit of PEP8 cleanup in the area. Thanks to knutin for the report, to raulcd for the initial patch and to charettes for the review.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16966 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-13 08:11:00 +00:00
Luke Plant
d5803bb5fb
More efficient IN clauses for prefetch_related queries by use of sets to eliminate duplicates
...
This simply reduces the size of the IN clause in the SQL, which can be
significant in some cases.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16944 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-08 13:50:29 +00:00
Luke Plant
64da8eec30
Fixed #17014 - added protection against infinite recursion.
...
Thanks to akaariai for the report and tests.
No tests have been added, since unittests for termination are basically
impossible, and the failure condition will take down the developer's machine
in this case. It has been tested against the cases in #17014 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16940 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-07 16:06:02 +00:00
Luke Plant
052a011ee6
Fixed #17003 - prefetch_related should support foreign keys/one-to-one
...
Support for `GenericForeignKey` is also included.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16939 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-07 16:05:53 +00:00
Luke Plant
b763412aa4
Removed ForeignRelatedObjectsDescriptor.RelatedManager.delete_manager, which has been unused since [14507]
...
And cleaned up the result, allowing more consistency with the other related
descriptors.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16931 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-06 11:08:11 +00:00
Luke Plant
662eea116f
Fixed #16937 - added `QuerySet.prefetch_related` to prefetch many related objects.
...
Many thanks to akaariai for lots of review and feedback, bug finding,
additional unit tests and performance testing.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16930 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-05 23:14:52 +00:00
Luke Plant
d30fbf8b78
Fixed #16902 - select_related() results in a poor perfomance
...
Thanks to ivan_virabyan for the great patch!
(For the record, some very small tweaks were made by me).
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16929 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-05 22:56:09 +00:00
Luke Plant
05cf72bace
Very small docstring correction.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16927 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-05 09:54:01 +00:00
Luke Plant
5009e45dfe
Fixed #14270 - related manager classes should be cached
...
Thanks to Alex Gaynor for the report and initial patch, and mrmachine for
more work on it.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16916 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-30 10:41:25 +00:00
Luke Plant
6d6fe61bf6
Cleanups to related manager code, especially in use of closures.
...
The related manager classes are defined within functions, and the methods
had inconsistent and confusing usage of closures vs. parameters on self to
retrieve needed information. Everything is stored on self now.
Also some methods were not using super() where they should have been.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16913 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-29 15:30:29 +00:00
Luke Plant
e3a6ac8f60
Small cleanups of 'related manager' code for consistency
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16912 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-29 15:30:19 +00:00
Luke Plant
29b8e34dfb
Removed unused parameter 'join_table' in various bits of RelatedManager code
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16907 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-26 17:20:20 +00:00
Gabriel Hurley
39bbd1653a
Fixed #7198 (again) -- Corrects a problem with string interpolation from r16876 and adds tests for the new error message.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16888 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-22 21:09:00 +00:00
Paul McMillan
f44c4a5d0f
Fixed #7198 -- Improved error message when missing models.py. Thanks Silver_Ghost and for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16876 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-22 05:10:52 +00:00
Carl Meyer
f91af72523
Fixed #16353 -- don't try to create Site objects on all databases. Refs #15573 , #15346 . Thanks Aymeric Augustin for the report and the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16868 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-21 22:46:48 +00:00
Ramiro Morales
9fe050a275
Added an implementation of bulk insert via the ORM to the Oracle DB backend.
...
Refs #7596 , r16739 and http://troels.arvin.dk/db/rdbms/#insert-multiple
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16819 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-11 23:02:53 +00:00
Ramiro Morales
83484cc109
Fixed #14138 -- Removed a superfluous import in the sqlite3 DB backend.
...
This could be of help with some issues people were seeing when deploying
Django with sqlite and Apache.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16799 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-11 00:52:03 +00:00
Alex Gaynor
345c4c4629
Remove a bunch of deadcode/dead imports.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16794 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 22:31:38 +00:00
Alex Gaynor
807b2a8216
Fixed bulk_insertion on databases which don't yet support it. Thanks to Justin Bronn for his Oracle wizardry.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16793 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 22:02:13 +00:00
Alex Gaynor
b45a4acf6f
Ensure bulk_create returns the right value if the argument is an empty list.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16792 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 21:46:59 +00:00
Alex Gaynor
f2bc919ec0
Ensure bulk_create returns what it is supposed to.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16791 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 21:44:57 +00:00
Russell Keith-Magee
fcee0c1b66
Fixed #16809 -- Forced MySQL to behave like a database. This avoids a problem where queries that do IS NONE checks can return the wrong result the first time they are executed if there is a recently inserted row. Thanks to James Pyrich for the debug work and patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16785 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 18:58:30 +00:00
Alex Gaynor
efb8327444
Fixed #16808 , removed some dead code from teh ORM. Thanks to aaugustin for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16782 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 17:38:58 +00:00
Russell Keith-Magee
5f287f75f2
Altered the behavior of URLField to avoid a potential DOS vector, and to avoid potential leakage of local filesystem data. A security announcement will be made shortly.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16760 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 00:47:00 +00:00
Alex Gaynor
7deb25b8dd
Fixed #7596 . Added Model.objects.bulk_create, and make use of it in several places. This provides a performance benefit when inserting multiple objects. THanks to Russ for the review, and Simon Meers for the MySQl implementation.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16739 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-09 19:22:28 +00:00
Honza Král
93f92635b6
Follow the same convention as the rest of the file.
...
Still cleanup after [16708]
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16710 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-29 23:01:25 +00:00
Honza Král
0037ca44d6
Forgotten import in [16708]
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16709 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-29 17:28:15 +00:00
Honza Král
7c657b2416
Fixed #15802 -- pyscopg2 sometimes fail to close the connection when it's already closed by the server, Thanks Rick van Hattem
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16708 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-29 15:55:06 +00:00
Malcolm Tredinnick
587fbff3dd
Make ManyToManyField model references more robust.
...
In r16679 a test was added to verify something had been fixed when a
unicode string type was passed in as a model name. The name has to be
ASCII convertible, but in Python 2.6 and earlier, it must also have str
type.
This commit fixes the problem for earlier Python versions and is almost
identical to a patch from b.leskes in #6045 .
Fixes #16689 . Refs #6045 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16682 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-25 06:07:28 +00:00
Malcolm Tredinnick
7182cd2284
Allow "pk" as a field alias in QuerySet.only() calls.
...
Thanks to GDorn for the patch. Fixed #15494 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16668 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 06:29:01 +00:00
Russell Keith-Magee
a39066ba0b
Fixed #16299 -- Ensure that unicode strings can be used to identify classes in ForeignKey and ManyToManyFields. Unicode strings aren't actually legal as class names, but this is an issue if you use from __future__ import unicode_literals in your models.py file. Thanks to Martijn Bastiaan for the report, and Anthony Briggs for the final patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16663 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 05:12:31 +00:00
Malcolm Tredinnick
1f770c62da
Fix initialisation of ImageField super classes.
...
Fixes #16548 , with thanks to pyriku.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16658 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 04:05:47 +00:00
Malcolm Tredinnick
2e56066a5b
Fixed an isnull=False filtering edge-case. Fixes #15316 .
...
The bulk of this patch is due to some fine analysis from Aleksandra
Sendecka.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16656 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 03:38:42 +00:00
Malcolm Tredinnick
c3a0dcf6e9
Added convenience method for viewing Query SQL without params.
...
This is the old Query.as_sql() method revived: it's like Query.__str__,
but the parameters aren't substituted into the placeholders. Thus, it's
a more accurate representation of the SQL the (default) backend will
see. Entirely internal.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16655 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 03:38:28 +00:00
Russell Keith-Magee
3afe409d0e
Fixed #14876 -- Ensure that join promotion works correctly when there are nullable related fields. Thanks to simonpercivall for the report, oinopion and Aleksandra Sendecka for the original patch, and to Malcolm for helping me wrestle the edge cases to the ground.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16648 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-22 07:40:12 +00:00