summaryrefslogtreecommitdiff
path: root/django/db/models
AgeCommit message (Collapse)Author
2008-12-09Fixed #9778 -- Added some special casing of the "Join on field 'abc'" errorMalcolm Tredinnick
message. It now gives an extra hint if there's a chance you just made a typo in the lookup type. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9620 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-12-09Fixed #9775 -- Fixed an oversight from r9601 and allow direct attributeMalcolm Tredinnick
lookup in the serializable_value() method. This means that abstract parents that are multi-table children of other models(no, really!!) now work again. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9618 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-12-08The first step in fixing a group of problems related to outputting a properMalcolm Tredinnick
"value" for a field that is a relation to another model. This part adds the utility method on Model that should help in general.Also cleans up the slightly ugly mess from r8957. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9601 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-12-08This fixes a group of problems in the SQL created by QuerySet.exclude() whenMalcolm Tredinnick
used in a few situations where NULL results can appear. Fixed #8921 (the only ticket I know of that noticed any of these). git-svn-id: http://code.djangoproject.com/svn/django/trunk@9590 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-12-07Fixed #9188 -- Fixed a case where we were generating syntactically invalid ↵Malcolm Tredinnick
SQL in some exclude() queries. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9588 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-12-02Fixed #8248: made help() work on models and improved introspection support.Luke Plant
Descriptors now return themselves when accessed via the class, as per standard Python descriptors like property(). git-svn-id: http://code.djangoproject.com/svn/django/trunk@9550 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-12-02Fixed a pair of bugs in determining the set of models to flush that were ↵Ian Kelly
causing test cause failures in Oracle after [9536]. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9546 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-11-16Fixed #9608: Ensured a Model's default repr() is printable even if its ↵Karen Tracey
__unicode__ method raises a Unicode error. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9475 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-10-24Fixed #9307 -- Added the ability to pickle the Query class used by the OracleMalcolm Tredinnick
backend. This allows Querysets to be cached for Oracle and should provide a model for adding pickling support to other (external) database backends that need a custom Query class. Thanks to Justin Bronn for some assistance with this patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9272 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-10-24Fixed #9406 -- Ensure that each database column is only represented once in theMalcolm Tredinnick
"ORDER BY" clause of an SQL statement. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9251 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-10-08A queryset that has had ordering removed (order_by()) can have ordering addedMalcolm Tredinnick
again later (order_by('foo')). Or, at least, it can now. Thanks to Ilya Novoselov for diagnosing the problem here. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9206 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-10-08Fixed #6748 -- When printing the repr() of querysets, don't load or displayMalcolm Tredinnick
more than 20 objects. This means that accidentally executing HugeStoryArchive.objects.all() at the interactive prompt (or in the debug template) won't try to load all 4,233,010 stories into memory and print them out. That would previously cause resource starvation and other "interesting" crashes. If you really, really want the previous behaviour (e.g. in a doctest that prints more than 20 items), display "list(qs)" instead of just "qs". git-svn-id: http://code.djangoproject.com/svn/django/trunk@9202 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-10-08Applying a limit to a queryset that already had an upper limit of 0 wasn'tMalcolm Tredinnick
working properly. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9201 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-10-05Fixed #9068 -- Fixed a couple of typos in InsertQuery.clone(). Thanks, rush.Malcolm Tredinnick
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9150 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-28Fixed Queryset.dates() in the presence of extra-select columns.Malcolm Tredinnick
Any extra(select=...) columns can be ignored in the SQL for dates, since we are only interested in extracting distinct date values. We were previously including them by accident and it was generating incorrect SQL. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9091 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-22Fixed a missing variable initialisation deep in the Query bowels.Malcolm Tredinnick
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9081 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-11Fixed a typo so that cloning UpdateQuery objects won't fail mysteriously.Malcolm Tredinnick
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9008 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-11A bug from queryset-refactor days: although the Query class has "group_by" andMalcolm Tredinnick
"having" attributes, only the former was included in the resulting SQL, meaning subclasses had to completely duplicate Query.as_sql() if they were using any kind of grouping filtering on the results. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9007 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-03Fixed #7588 -- Inherit fields from concrete ancestor classes via abstract baseMalcolm Tredinnick
classes. Based on a patch from emulbreh. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8932 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-03Fixed #8825 -- Fixed a small error model field setup (on the model class) fromMalcolm Tredinnick
r8855. Patch from Christofer Bernander. Test based on one from cgrady. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8908 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-03Fixed #8819 -- Don't include two copies of extra-select columns in the query.Malcolm Tredinnick
This was triggered by r8794, but was, in fact, fairly fragile before then. The current fix is the correct way we should be doing this. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8898 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-03Fixed #8669 -- Use a consistent version of create() across the board forMalcolm Tredinnick
model/field instance creation. Based on a patch from Richard Davies. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8884 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-02Fixed #8309: subclasses now inherit `GenericForeignKey` correctly. There's ↵Jacob Kaplan-Moss
also now an internal API so that other "virtual fields" like GFK can be inherited as well. Thanks, msaelices. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8855 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-02Fixed #8790 -- Multi-branch join trees that shared tables of the same name wereMalcolm Tredinnick
sometimes also sharing aliases, instead of creating their own. This was generating incorrect SQL. No representative test for this fix yet because I haven't had time to write one that fits in nicely with the test suite. But it works for the monstrous example in #8790 and a bunch of other complex examples I've created locally. Will write a test later. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8853 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-02Fixed #7154 -- Inherit all model managers from abstract base classes.Malcolm Tredinnick
Also added documentation describing how manager inheritance works (and when manager aren't inherited). Based on some patches from sebastian_noack and emulbreh. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8851 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-02Fixed #8439 -- Complex combinations of Q-objects (using both conjunctions andMalcolm Tredinnick
disjunctions) were producing incorrect SQL when nullable relations were involved. This fixes that. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8832 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-02A typo fix that fortunately wasn't creating invalid SQL, just slightly lessMalcolm Tredinnick
efficient than possible SQL in some odd cases (found via code inspection, not any particular failing example). git-svn-id: http://code.djangoproject.com/svn/django/trunk@8831 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-02Get the join promotion code (a bit more) correct when constructing joins for ↵Malcolm Tredinnick
ordering. Yes, this really is a commit that fixes an oversight in a commit that fixed an oversight. One day I'll get it right. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8829 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Replaced exact lookups of the empty string with isnull lookups in Oracle. ↵Ian Kelly
Fixes the testPreventDuplicateComments case. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8827 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed #8648 -- Admin no longer ignores to_field. Thanks for the help Karen ↵Brian Rosner
Tracey and SmileyChris. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8823 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed #8210 and #8664: moved `USStateField` and `PhoneNumberField` to ↵Jacob Kaplan-Moss
`django.contrib.localflavor.us`. This is a backwards-incompatible change, albeit a minor one; just add an aditional `import` and go on your way. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8819 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed #7975 -- Callable defaults in inline model formsets now work ↵Brian Rosner
correctly. Based on patch from msaelices. Thanks for your hard work msaelices. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8816 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed #8076: fixed `get_(next/previous)_by_date` when used with subclasses. ↵Jacob Kaplan-Moss
Thanks, bjornkri and jan_oberst. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8814 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed #8115: avoid a infiniate loop when collecting related objects for ↵Jacob Kaplan-Moss
deletion. I can't reproduce the original error leading to #8115 and the patch. However, the only harm this change could cause is to raise more `CyclicDependency` exceptions than strictly necessary. That's better than infinite loops, at least, and it's easier to clean up in the future when we figure out the actual fix. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8807 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Repaired an oversight from [8772] that let made certain types of fields with ↵Jacob Kaplan-Moss
choices fail. Fixes #6967 again. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8806 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed extra_select with DateQuery in OracleIan Kelly
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8804 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed #7302: Corrected quoting of columns in extra_group_by. Thanks to Ivan ↵Russell Keith-Magee
Sagalaev for the patch and initial test. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8794 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed #7512 -- Fixed an oversight when I first fixed ordering on nullableMalcolm Tredinnick
foreign keys (r7761). Thanks to George Vilches for the test case here. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8783 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-09-01Fixed #8316 -- Put tighter restrictions on the type of Foreign Key fieldsMalcolm Tredinnick
created for MySQL (because MySQL + InnoDB has those restrictions). Patch from julianb. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8782 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-31Fixed #6967: `ModelForm`s now validate choices. Thanks, mattmcc -- the ↵Jacob Kaplan-Moss
failing test helped quite a bit. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8772 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-31Fixed handling of primary keys in model formsets. Model formsets should now ↵Brian Rosner
work nicely with custom primary keys that are OneToOneField, ForeignKey and AutoField. Added tests to handle each of them. Fixes #8241, #8694, #8695 and #8719. Thanks Karen Tracey, jonloyens, sciyoshi, semenov and magneto for tracking down various parts of this patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8756 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-30[8721] introduced some internal field names. We hide them from the list ofMalcolm Tredinnick
valid field names in debugging output so that it doesn't confuse things. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8730 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-29Fixed a typo from the refactoring in [8455]. With bonus test, too. Thanks, vung.Malcolm Tredinnick
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8724 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-29Fixed a missing piece of [8721].Malcolm Tredinnick
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8723 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-29Fixed #8279 -- Multiple many-to-many relations to "self" are now possible.Malcolm Tredinnick
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8721 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-29Fixed #8101 -- Allow the strings '1' and '0' as filter values for booleanMalcolm Tredinnick
fields (the latter was causing problems). This allows these values in URLs (e.g. the admin filtering). Not an ideal solution to the problem, but will do the job for the time being. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8691 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-29Fixed #7823 -- Fixed an edge case in RelatedField.get_db_prep_lookup() so thatMalcolm Tredinnick
it works correctly with custom field subclasses. Patch from Ivan Sagalaev. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8690 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-28Fixed a bug in `NullBooleanField.to_python`.Jacob Kaplan-Moss
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8684 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-28Fixed #8556: added a useful formfield to `CommaSeparatedIntegerField`. ↵Jacob Kaplan-Moss
gkelly, mattmcc, and kratorius all contributed portions of this patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8682 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2008-08-28Removed a couple of unused imports.Malcolm Tredinnick
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8674 bcc190cf-cafb-0310-a4f2-bffc1f526a37