Jensen Cochran
d44afd8892
Fixed #26804 -- Fixed a race condition in QuerySet.update_or_create().
2016-07-14 12:10:19 -04:00
Kenneth
841cb45847
Fixed #26884 -- Evaluated callables in QuerySet.update_or_create()'s defaults when updating.
2016-07-12 22:09:53 -04:00
Andrey Fedoseev
81963b37a9
Fixed #17657 -- Made ModelForm respect ModelMultipleChoiceField's to_field_name.
...
Follow up to 67d984413c
.
2016-07-12 16:20:06 -04:00
Julien Hartmann
f4afb85d7e
Fixed #26749 -- Preserved behavior of use_for_related_field during deprecation.
2016-07-11 13:30:44 -04:00
Anderson Resende
ba53da894f
Fixed #26796 -- Added a system check for m2m fields with ignored limit_choices_to.
2016-07-08 19:37:40 -04:00
Simon Charette
8a4f017f45
Fixed #26348 -- Added TruncTime and exposed it through the __time lookup.
...
Thanks Tim for the review.
2016-07-08 12:35:34 -04:00
Simon Charette
082c52dbed
Refs #25774 , #26348 -- Allowed Trunc functions to operate with time fields.
...
Thanks Josh for the amazing testing setup and Tim for the review.
2016-07-08 12:35:34 -04:00
Akshesh
52442898e7
Refs #26709 -- Added 'model' argument to SchemaEditor.add/remove_index()
...
This removes the dependency of the Index class on its model attribute
when a name is passed to it.
Thanks to Markush for discussions.
2016-07-07 10:06:55 -04:00
Berker Peksag
12b4280444
Fixed #21548 -- Added FileExtensionValidator and validate_image_file_extension.
2016-06-30 09:08:50 -04:00
Andrew Nester
baff4dd37d
Fixed #25292 -- Fixed crash in ManyToManyField.through_fields check.
2016-06-30 08:53:38 -04:00
David Sanders
a84344bc53
Fixed #19513 , #18580 -- Fixed crash on QuerySet.update() after annotate().
2016-06-29 14:08:13 -04:00
Eduard Stepanov
49b4596cb4
Fixed #26786 -- Avoided redundant max value validators on integer fields.
2016-06-28 11:39:20 -04:00
Ben Demboski
2224a56631
Fixed #26784 -- Made ForeignKey.validate() pass `model` to router if model_instance=None.
2016-06-27 13:33:37 -04:00
Akshesh
156e2d59cf
Fixed #26709 -- Added class-based indexes.
...
Added the AddIndex and RemoveIndex operations to use them in migrations.
Thanks markush, mjtamlyn, timgraham, and charettes for review and advice.
2016-06-27 10:41:01 -04:00
Tim Graham
9bf8d50a67
Fixed #26778 -- Fixed ModelSignal.connect() weak argument.
2016-06-18 20:45:38 -04:00
Tim Graham
7def55c3f6
Reverted "Fixed #26398 -- Made FieldFile.open() respect its mode argument."
...
This reverts commit a52a531a8b
due to
regressions described in refs #26772 .
2016-06-17 21:04:02 -04:00
Jon Dufresne
267dc4addd
Fixed #4136 -- Made ModelForm save empty values for nullable CharFields as NULL.
...
Previously, empty values were saved as strings.
2016-06-13 09:14:36 -04:00
Berker Peksag
0bce2f102c
Fixed #12810 -- Added a check for clashing ManyToManyField.db_table names.
2016-06-10 10:57:22 -04:00
Michal Petrucha
686a593aaa
Fixed #26648 -- Added a system check for invalid related_query_name's containing underscores.
2016-06-09 11:57:32 -04:00
Michal Petrucha
effb4ed6f5
Replaced a hardcoded LOOKUP_SEP in models/fields/__init__.py
2016-06-09 11:57:00 -04:00
Sergey Fedoseev
21130ce1a9
Fixed #26718 -- Added system check for existence of the fields specified by ForeignKey.to_field.
2016-06-09 10:19:09 -04:00
Tim Graham
908c26b079
Fixed typos in db/models/fields/related_descriptors.py
2016-06-07 08:53:05 -04:00
Paulo
1a2a7cc01e
Fixed typo in db/models/fields/related_descriptors.py
2016-06-07 08:50:06 -04:00
Paulo
3e9f769fd1
Refs #15250 -- Added docstring for ForwardOneToOneDescriptor.
2016-06-07 07:22:32 -04:00
Tim Graham
e2296e7f0a
Fixed #26667 -- Fixed a regression in queries on a OneToOneField that has to_field and primary_key=True.
...
Thanks Simon Charette for review.
2016-06-04 08:04:51 -04:00
Paulo
38575b007a
Fixed #15250 -- Avoided extra query on some multi-table inheritance queries.
...
Thanks marekw2143 for the initial patch and carljm for support.
2016-06-03 10:18:24 -04:00
Will Koster
9899347641
Fixed #26638 -- Allowed callable arguments for QuerySet.get_or_create()/update_or_create() defaults.
2016-06-03 10:00:53 -04:00
Alex Hill
08014fe75b
Fixed #26686 -- Fixed crash when registering model signals with abstract senders.
2016-06-02 14:34:01 -04:00
Simon Charette
53a5fb3cc0
Fixed #26676 -- Prevented prefetching to_attr from caching its result in through attr.
...
Thanks Ursidours for the report.
2016-05-31 14:32:58 -04:00
Tim Graham
a4c20ae85b
Refs #24227 -- Fixed crash of ManyToManyField.value_from_object() on unsaved model instances.
...
This behavior was removed in 67d984413c
but is needed to prevent a crash in formtools.
2016-05-28 15:41:47 -04:00
Alex Hill
ff6c6feae1
Fixed #26642 -- Made ModelSignal.disconnect() work with lazy references.
2016-05-27 17:45:08 -04:00
Alex Hill
779bb82f51
Fixed #26421 -- Refactored ModelSignal to use Apps.lazy_model_operation()
2016-05-19 21:33:36 -04:00
Alex Hill
2ff7ef15b0
Refs #26421 -- Refactored Apps.lazy_model_operation() for better checks and tests
2016-05-19 21:33:36 -04:00
Tim Graham
546649f2d6
Fixed some newlines in imports per isort.
2016-05-19 11:05:44 -04:00
darius BERNARD
a7ad473ad2
Fixed #26515 -- Fixed Query.trim_joins() for nested ForeignObjects.
2016-05-19 09:56:24 -04:00
Marti Raudsepp
b9ae662c97
Fixed #26620 -- Made Model.refresh_from_db() fail when passed unknown kwargs.
2016-05-18 09:27:23 -04:00
Josh Smeaton
2a4af0ea43
Fixed #25774 -- Refactor datetime expressions into public API
2016-05-18 20:14:58 +10:00
Loïc Bistuer
ed0ff913c6
Fixed #10506 , #13793 , #14891 , #25201 -- Introduced new APIs to specify models' default and base managers.
...
This deprecates use_for_related_fields.
Old API:
class CustomManager(models.Model):
use_for_related_fields = True
class Model(models.Model):
custom_manager = CustomManager()
New API:
class Model(models.Model):
custom_manager = CustomManager()
class Meta:
base_manager_name = 'custom_manager'
Refs #20932 , #25897 .
Thanks Carl Meyer for the guidance throughout this work.
Thanks Tim Graham for writing the docs.
2016-05-17 12:07:22 +07:00
Loïc Bistuer
3a47d42fa3
Fixed #20932 , #25897 -- Streamlined manager inheritance.
2016-05-17 02:29:22 +07:00
Aron Podrigal
85ef98dc6e
Fixed #24305 -- Allowed overriding fields on abstract models.
...
Fields inherited from abstract base classes may be overridden like
any other Python attribute. Inheriting from multiple models/classes
with the same attribute name will follow the MRO.
2016-05-16 07:32:21 -04:00
Simon Charette
f937c9ec97
Fixed #24100 -- Made the migration signals dispatch its plan and apps.
...
Thanks Markus for your contribution and Tim for your review.
2016-05-15 19:51:15 -04:00
Tim Graham
3642835bde
Removed redundant code in QuerySet._batched_insert().
2016-05-14 06:42:50 -04:00
Tim Graham
67d984413c
Refs #24227 -- Removed ManyToManyField special casing in model_to_dict().
2016-05-11 10:12:59 -04:00
Claude Paroz
388bb5bd9a
Fixed #22936 -- Obsoleted Field.get_prep_lookup()/get_db_prep_lookup()
...
Thanks Tim Graham for completing the initial patch.
2016-05-04 20:02:01 +02:00
Ville Skyttä
575a9a791e
Normalized "an SQL" spelling.
2016-05-03 19:30:48 -04:00
Simon Charette
7ec330eeb9
Refs #26565 -- Errored nicely when using Prefetch with a values() queryset.
...
Thanks Maxime Lorant for the report and Anssi for the suggestion.
2016-05-03 09:28:31 -04:00
Michal Petrucha
8a47ba679d
Refs #16508 -- Made Model.__init__() aware of virtual fields.
...
It's no longer necessary for GenericForeignKey (and any other virtual fields)
to intercept the field's values using the pre_init signal.
2016-05-03 09:06:26 -04:00
Tim Graham
eab5df12b6
Refs #22936 -- Moved more of Field.get_db_prep_lookup() to lookups.
2016-05-02 07:58:24 -04:00
Cristiano
914c72be2a
Fixed #26058 -- Delegated os.path bits of FileField's filename generation to the Storage.
2016-04-30 17:22:40 -04:00
Anssi Kääriäinen
7f51876f99
Fixed #26207 -- Replaced dynamic classes with non-data descriptors for deferred instance loading.
2016-04-29 13:06:32 -04:00
Tim Graham
1ba0b22a7a
Refs #22936 -- Removed unused code in Field.get_db_prep_lookup().
2016-04-25 08:31:32 -04:00
Tim Graham
b454e2cbc9
Removed unused Q.clone().
...
Unused since afe0bb7b13
.
2016-04-25 08:31:32 -04:00
Tim Graham
901dc90db0
Removed unused/untested Field.get_choices_default()/value_to_string() methods.
2016-04-25 08:05:27 -04:00
Tim Graham
a755e0657e
Removed unused BaseExpression.refs_aggregate().
...
Unused since afe0bb7b13
.
2016-04-22 13:04:13 -04:00
Tim Graham
87338198e9
Fixed #26320 -- Deprecated implicit OneToOnField parent_link.
2016-04-22 12:59:41 -04:00
Tim Graham
6b0a25d9e2
Removed unused ForeignObject.attnames/get_defaults().
2016-04-22 10:00:50 -04:00
Tim Graham
2da7f5afcf
Removed unused ForeignObjectRel.get_choices() limit_to_currently_related argument.
...
Unused since its introduction in dc334a2ba8
.
2016-04-22 08:45:41 -04:00
Marc Tamlyn
2d877da855
Refs #3254 -- Added full text search to contrib.postgres.
...
Adds a reasonably feature complete implementation of full text search
using the built in PostgreSQL engine. It uses public APIs from
Expression and Lookup.
With thanks to Tim Graham, Simon Charettes, Josh Smeaton, Mikey Ariel
and many others for their advice and review. Particular thanks also go
to the supporters of the contrib.postgres kickstarter.
2016-04-22 10:44:37 +01:00
Loïc Bistuer
a885bca1df
Fixed #26528 -- Allowed any iterable (e.g. tuple) as validators kwarg for form/model fields.
2016-04-22 09:38:47 +07:00
Tim Graham
0456a8b9e6
Fixed #26486 -- Fixed a select_related() + defer() MTI edge case.
2016-04-13 10:32:17 -04:00
Michal Petrucha
c339a5a6f7
Refs #16508 -- Renamed the current "virtual" fields to "private".
...
The only reason why GenericForeignKey and GenericRelation are stored
separately inside _meta is that they need to be cloned for every model
subclass, but that's not true for any other virtual field. Actually,
it's only true for GenericRelation.
2016-04-13 10:10:53 -04:00
Tim Graham
1c30a6473d
Refs #22936 -- Moved IntegerField.get_prep_lookup() logic to lookups.
2016-04-12 10:14:41 -04:00
Tim Graham
df8d8d4292
Fixed E128 flake8 warnings in django/.
2016-04-08 09:51:06 -04:00
Simon Charette
a6074e8908
Fixed #26458 -- Based Avg's default output_field resolution on its source field type.
...
Thanks Tim for the review and Josh for the input.
2016-04-05 23:48:08 -04:00
Tim Graham
2cd2d18851
Fixed W503 flake8 warnings.
2016-04-04 17:14:26 -04:00
Markus Holtermann
103d4e1d65
Fixed #26441 -- Added model Field.db_check() method
...
Thanks Common Code for financing the work on this commit.
2016-04-03 09:56:59 +02:00
Akshesh
49f95cc0a0
Fixed #11560 -- Allowed proxy model multiple-inheritance from the same concrete base model.
2016-03-30 13:06:27 -04:00
Claude Paroz
03b6947728
Fixed #24932 -- Added Cast database function.
...
Thanks Ian Foote for the initial patch.
2016-03-29 08:14:33 -04:00
Kai Feldhoff
5336158990
Fixed #25759 -- Added keyword arguments to customize Expressions' as_sql().
2016-03-29 08:09:58 -04:00
Simon Charette
67cf5efa31
Fixed #26413 -- Fixed a regression with abstract model inheritance and explicit parent links.
...
Thanks Trac alias trkjgrdg for the report and Tim for investigation and review.
2016-03-28 21:11:37 -04:00
Tim Graham
1c8c0837c6
Sorted single letter imports per the latest version of isort.
2016-03-28 11:45:31 -04:00
Claude Paroz
fc01c84bad
Avoided need to import model fields in models/functions.py.
2016-03-28 10:59:30 -04:00
Tim Graham
fb84e877ce
Normalized Func.as_sqlite() signature.
2016-03-28 10:59:12 -04:00
Alexey Kotlyarov
a52a531a8b
Fixed #26398 -- Made FieldFile.open() respect its mode argument.
2016-03-23 10:05:26 -04:00
Kai Feldhoff
baa8b0ec39
Refs #25759 -- Fixed some Funcs to work if different database backends are used.
2016-03-21 20:20:29 -04:00
Jason Parrott
4c1c93032f
Fixed #26373 -- Fixed reverse lookup crash with a ForeignKey to_field in a subquery.
2016-03-19 17:54:29 -04:00
Tim Graham
f15f4b8bb6
Refs #26367 -- Removed obsolete _size cache on FieldField.
...
The _size attribute is used in File.size but FieldFile overrides it.
2016-03-17 10:25:17 -04:00
Claude Paroz
204e00c0c5
Fixed #26140 -- Suppressed MySQL warning when inserting binary content
...
Thanks Tim Graham for the review.
2016-03-14 18:08:13 +01:00
Tim Graham
4f0cd0fd16
Fixed #26324 -- Fixed DurationField with fractional seconds on SQLite.
2016-03-10 12:18:29 -05:00
Tim Graham
359be4460e
Refs #19527 -- Fixed SQL compiler regression causing Oracle failure.
2016-03-05 14:02:35 -05:00
Simon Charette
c92123cc1d
Fixed #26226 -- Made related managers honor the queryset used for prefetching their results.
...
Thanks Loïc for the suggested improvements and Tim for the review.
2016-03-02 16:10:18 -05:00
Marc Tamlyn
8ddc79a799
Fixed #26285 -- Deprecated the MySQL-specific __search lookup.
2016-03-02 14:41:56 -05:00
acrefoot
04240b2365
Refs #19527 -- Allowed QuerySet.bulk_create() to set the primary key of its objects.
...
PostgreSQL support only.
Thanks Vladislav Manchev and alesasnouski for working on the patch.
2016-03-02 14:29:09 -05:00
Simon Charette
0223e213dd
Fixed #26186 -- Documented how app relative relationships of abstract models behave.
...
This partially reverts commit bc7d201bdb
.
Thanks Tim for the review.
Refs #25858 .
2016-02-29 22:07:05 -05:00
Adam Chainz
6a383f773a
Removed unused 'Between' lookup.
...
It was added in 20bab2cf9d
and stopped being
used for `Range` in 00aa562884
when
`bilateral` was added to `Transform`.
2016-02-29 08:00:04 -05:00
chenesan
b84f5ab4ec
Fixed #26230 -- Made default_related_name affect related_query_name.
2016-02-27 08:48:32 -05:00
Attila Tovt
5e2c4d7afb
Fixed #26264 -- Fixed prefetch_related() crashes with values_list(flat=True)
2016-02-26 19:26:15 -05:00
Adam Chainz
ef33bc2d4d
Fixed #25279 -- Made prefetch_related_objects() public.
2016-02-26 14:55:01 -05:00
Simon Charette
766afc22a1
Fixed #24793 -- Unified temporal difference support.
2016-02-26 12:25:12 -05:00
Edwar Baron
eb44172760
Fixed #25811 -- Added a helpful error when making _in queries across different databases.
2016-02-26 07:31:56 -05:00
Tim Graham
70d3f81ca4
Fixed #26233 -- Fixed invalid reSt in models.Q docstring.
2016-02-18 08:45:55 -05:00
Tim Graham
004ba0f99e
Removed unneeded hint=None/obj=None in system check messages.
2016-02-12 13:01:25 -05:00
Markus Holtermann
18afd50a2b
Updated allow_migrate() signature in check framework tests
2016-02-12 14:31:27 +11:00
Anssi Kääriäinen
46ecfb9b3a
Fixed #26196 -- Made sure __in lookups use to_field as default.
...
Thanks Simon Charette for the test.
2016-02-11 11:09:08 -05:00
ZachLiuGIS
04e13c8913
Fixed #26179 -- Removed null assignment check for non-nullable foreign key fields.
2016-02-11 10:07:39 -05:00
Anssi Kääriäinen
353aecbf8c
Fixed #26153 -- Reallowed Q-objects in ForeignObject.get_extra_descriptor_filter().
2016-02-11 08:59:43 -05:00
Brobin
dca8b916ff
Fixed #26154 -- Deprecated CommaSeparatedIntegerField
2016-02-10 17:57:43 -05:00
Simon Charette
a325fb1f9b
Fixed #26162 -- Checked query name clashes of hidden relationships.
...
Although reverse accessor clashes should be skipped query name can't be hidden.
Thanks to Ian Foote and Tim Graham for the review.
2016-02-08 09:59:27 -05:00
Tim Graham
10a162809f
Refs #24007 -- Removed an apps.populate() call in model unpickling that can cause deadlocks.
2016-02-08 08:28:48 -05:00
James Pulec
f05722a08a
Fixed #25354 -- Added class/app_label interpolation for related_query_name.
2016-01-28 11:10:47 -05:00
François Freitag
bdbe50a491
Fixed #25546 -- Prevented duplicate queries with nested prefetch_related().
2016-01-26 07:20:13 -05:00
userimack
60586dd737
Fixed #26125 -- Fixed E731 flake warnings.
2016-01-25 14:23:43 -05:00
Joshua Phillips
16baec5c8a
Fixed #25910 -- Rejected read-only property names in model constructors.
2016-01-22 13:27:11 -05:00
Anssi Kääriäinen
ee596888e1
Fixed #26092 -- Fixed QuerySet.order_by() regression with an M2M through model.
2016-01-20 19:13:05 -05:00
Simon Charette
bc7d201bdb
Fixed #25858 -- Bound abstract model application relative relationships.
...
Thanks to Karl Hobley for the report and Markus, Shai, Aymeric for their input
and Tim for the review.
2016-01-11 12:23:23 -05:00
Anderson Resende
b5f8c81ce1
Fixed #26026 -- Fixed isinstance crash comparing EmptyQuerySet to non-QuerySet.
2016-01-07 10:57:05 -05:00
Simon Charette
7bb373e309
Refs #25746 -- Added a test utility to isolate inlined model registration.
...
Thanks to Tim for the review.
2016-01-06 20:00:07 -05:00
varunnaganathan
3eba9638ee
Fixed #25316 -- Fixed a crash with order_by() and values() after annotate().
2016-01-02 07:06:54 -05:00
Marten Kenbeek
16411b8400
Fixed #26013 -- Moved django.core.urlresolvers to django.urls.
...
Thanks to Tim Graham for the review.
2015-12-31 14:21:29 -05:00
Bryan Marty
62ca2dea04
Fixed #8065 -- Made id_list an optional argument for QuerySet.in_bulk().
2015-12-26 17:57:19 -05:00
Alexander Sosnovskiy
2a7ce34600
Fixed #14286 -- Added models.BigAutoField.
2015-12-25 20:01:31 -05:00
Varun Sharma
692d055890
Fixed #25984 -- Corrected RuntimeError message in ModelBase.__new__().
2015-12-24 16:44:58 -05:00
Chris Lamb
77b8d8cb6d
Discouraged use of /tmp with predictable names.
...
The use of predictable filenames in /tmp often leads to symlink attacks
so remove the most obvious use of them in the docs.
2015-12-24 09:54:33 -05:00
Luis San Pablo
a856555df2
Fixed #25981 -- Added need to update migrations to on_delete deprecation warning.
2015-12-24 08:08:22 -05:00
Tomo Otsuka
8b6974a685
Fixed #25972 -- Restored support for the isnull lookup with ForeignObject.
2015-12-24 07:33:55 -05:00
Ian Foote
86eccdc8b6
Fixed #25544 -- Removed duplicate ids in prefetch_related() queries.
2015-12-17 19:08:30 -05:00
Sergey Fedoseev
ed1bcf0515
Refs #25894 -- Fixed evaluation of zero-length slices of QuerySet.values() on Oracle.
2015-12-17 17:07:10 -05:00
Sergey Fedoseev
69b69f6d60
Fixed #25894 -- Fixed evaluation of zero-length slices of QuerySet.values().
2015-12-15 07:29:35 -05:00
Ed Bartosh
423b3afce4
Fixed #25939 -- Removed redundant transaction in QuerySet.update_or_create().
...
There is no need to wrap the save() call in transaction.atomic() as
it's already done down the call stack in Model.save_base().
2015-12-14 19:41:11 -05:00
Simon Charette
8035cee922
Fixed #25882 -- Prevented fast deletes matching no rows from crashing on MySQL.
...
Thanks to Trac aliases gerricom for the report, raphaelmerx for the
attempts to reproduce and Sergey Fedoseev and Tim for the review.
Refs #16891
2015-12-14 13:12:36 -05:00
Attila Tovt
6f229048dd
Fixed #25547 -- Made Model.refresh_from_db() update FileField's instance.
2015-12-05 17:23:13 -05:00
Alexander Sosnovskiy
b61eab18f7
Fixed #13774 -- Added models.Field.rel_db_type().
2015-12-04 07:55:41 -05:00
Josh Soref
93452a70e8
Fixed many spelling mistakes in code, comments, and docs.
2015-12-03 12:48:24 -05:00
Claude Paroz
68554d1676
Fixed #13427 -- Made auto-m2m verbose names translatable
2015-11-21 18:09:57 +01:00
Tim Graham
54e2e688e1
Fixed #25715 -- Fixed Model.refresh_from_db() with ForeignKey w/on_delete=SET_NULL.
2015-11-21 10:34:01 -05:00
Dmitry Dygalo
92eced62cd
Simplified lists creation in three places.
2015-11-17 07:58:49 -05:00
Patryk Zawadzki
7628f87e2b
Fixed #25750 -- Made Options._expire_cache() faster
...
Avoided unnecessary list operations and delattr() calls that result
in an exception being raised as it causes call frame reconstruction
which is very costly, especially so in a function that is called
millions of times.
2015-11-14 16:43:46 -05:00
Simon Charette
c550beb0cc
Fixed #25723 -- Made related field checks lookup against their local apps.
2015-11-11 19:33:54 -05:00
Razzi Abuissa
c819780d3f
Removed gendered pronoun in a code comment.
2015-11-11 17:07:13 -05:00
Simon Charette
4a9c32f5ee
Refs #25693 -- Avoided redundant calls to get_fields() in `to_attr` validation.
2015-11-11 12:25:10 -05:00
Simon Charette
4cd5d846d4
Fixed #25730 -- Made Model.__str__() always return str instances.
...
Thanks to Kevin Turner for the report and Tim for the review.
2015-11-11 12:18:52 -05:00
Ian Foote
4608573788
Fixed #25693 -- Prevented data loss with Prefetch and ManyToManyField.
...
Thanks to Jamie Matthews for finding and explaining the bug.
2015-11-10 12:12:07 -05:00
Laura Feier
7862cbda86
Fixed #24576 -- Made deletion of related objects deterministic.
2015-11-09 15:04:48 -05:00
Dmitry Dygalo
917100eed7
Simplified dict initialization in two places.
2015-11-07 21:46:46 +01:00
Sergey Fedoseev
0a26121797
Refs #25629 -- Added `arity` class attribute to `Func` expressions
2015-11-02 20:09:21 +01:00
Ian Foote
32ef48aa56
Fixed #25609 -- Fixed regression in related field nested lookup error.
2015-10-27 13:49:00 -04:00
Simon Charette
976bd519a8
Revert "Fixed #25417 -- Added a field check for invalid default values."
...
This reverts commit 71ebcb85b9
.
2015-10-27 11:02:35 -04:00
Tim Graham
9c5e272860
Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set.
2015-10-27 07:57:15 -04:00
Tim Graham
0b5d32faca
Fixed #25611 -- Standardized descriptor signatures.
2015-10-26 11:31:16 -04:00
Simon Charette
3db3ab71e9
Fixed #25563 -- Cached deferred models in their proxied model's _meta.apps.
...
Thanks to Andriy Sokolovskiy for the report and Tim Graham for the review.
2015-10-19 20:11:32 -04:00
Josh Smeaton
6c95b134e9
Fixed #25517 -- Made Concat function idempotent on SQLite.
2015-10-17 15:51:04 -04:00
Simon Charette
c1b6a8a98b
Fixed #25560 -- Made empty string related_name invalid.
...
Thanks to Ali Lotfi for the initial report and patch
and Tim Graham for the review.
2015-10-16 14:22:15 -04:00
Antoine Catton
b971c1cd78
Fixed #25506 -- Allowed filtering over a RawSQL annotation.
...
Co-Authored-By: Gavin Wahl <gwahl@fusionbox.com>
2015-10-14 11:13:58 -07:00
Tim Graham
c7aff31397
Refs #25535 -- Minor edits to ForeignObject check changes.
2015-10-14 05:21:08 -07:00
Antoine Catton
80dac8c33e
Fixed #25535 -- Made ForeignObject checks less strict.
...
Check that the foreign object `from_fields` are a subset of any unique
constraints on the foreign model.
2015-10-12 18:00:59 -04:00
Simon Charette
a82e21b0f9
Refs #18012 -- Removed the now unused proxied_children model option.
...
Thanks to Tim for the review.
2015-10-12 12:14:27 -04:00
Simon Charette
5b980897f2
Refs #18012 -- Made proxy and concrete model reverse fields consistent.
...
Prior to this change proxy models reverse fields didn't include the
reverse fields pointing to their concrete model.
2015-10-12 12:14:27 -04:00
Simon Charette
211486f3ab
Fixed #23076 , #25505 -- Fixed deletion of intermediate proxy models.
...
Thanks to James Murty for his work on an alternate patch.
2015-10-12 12:14:26 -04:00
Simon Charette
8bdfabed65
Refs #18012 -- Removed special casing for proxy models deletion.
...
This isn't required anymore now that reverse foreign keys
from proxy models are propagated to their concrete model.
2015-10-12 12:14:26 -04:00
Simon Charette
6c9f37ea9e
Fixed #18012 -- Propagated reverse foreign keys from proxy to concrete models.
...
Thanks to Anssi for the review.
2015-10-12 12:14:26 -04:00
Tim Graham
67732a9b18
Fixed #24687 -- Added select_related() validation for nested non-relational fields.
...
The removed test was added in the original select_related() validation
patch (45d4e43d2d
), but there doesn't
seem to be any reason for it.
Thanks Claude Paroz for help and review.
2015-10-10 09:48:50 -04:00
Tim Graham
384ddbec1b
Fixed #14368 -- Allowed setting a reverse OneToOne relation to None.
2015-10-09 10:20:53 -04:00
Mariusz Felisiak
914167abf1
Fixed #25503 -- Fixed system check crash on ForeignKey to abstract model.
2015-10-06 19:22:37 -04:00
Tim Graham
e0837f2cb1
Fixed #25508 -- Modified QuerySet.__repr__() to disambiguate it from a list.
2015-10-06 12:38:34 -04:00
Tim Graham
ea8e7fd989
Removed obsolete (since Python 2.3) __safe_for_unpickling__ attribute.
2015-10-05 08:07:27 -04:00
Tim Graham
9f6b704769
Fixed #21042 -- Allowed accessing FileDescriptor on the model class.
...
This is consistent with ability to reference other descriptors
on the model class (5ef0c03ae9
).
2015-10-01 15:19:39 -04:00
Tim Graham
1f84721fac
Removed unused Aggregate.input_field.
...
Obsolete since 4a66a69239
.
2015-09-24 09:15:56 -04:00
Tim Graham
a780505f3a
Refs #14030 -- Removed more backwards compatiblity for old-style aggregates.
...
Per deprecation timeline.
2015-09-24 09:15:55 -04:00
Tim Graham
96317ad8de
Refs #21414 -- Removed Field.related per deprecation timeline.
2015-09-23 19:31:10 -04:00
Tim Graham
fd6a299cd0
Refs #14030 -- Removed backwards compatiblity for old-style aggregates.
...
Per deprecation timeline.
2015-09-23 19:31:10 -04:00
Tim Graham
1bb6ecf6d3
Refs #9893 -- Removed shims for lack of max_length support in file storage per deprecation timeline.
2015-09-23 19:31:10 -04:00
Tim Graham
3f50dc2be5
Removed SQLCompiler.__call__() per deprecation timeline.
2015-09-23 19:31:09 -04:00
Tim Graham
c64dd646f5
Refs #12663 -- Removed deprecated Model._meta methods.
2015-09-23 19:31:09 -04:00
Tim Graham
08ab262649
Removed SubfieldBase per deprecation timeline.
2015-09-23 19:31:09 -04:00
Alex Hill
134ca4d438
Fixed #24509 -- Added Expression support to SQLInsertCompiler
2015-09-22 23:35:24 +10:00
Aymeric Augustin
361254810e
Documented "rel objects".
...
Kept the docstring short because these objects aren't very well defined
and they're in the crosshairs of several refactorings.
2015-09-21 22:20:42 +02:00
Aymeric Augustin
e542e81b39
Renamed descriptor classes for related objects.
...
The old names were downright confusing. Some seemed to mean the opposite
of what the class actually did.
The new names follow a consistent nomenclature:
(Forward|Reverse)(ManyToOne|OneToOne|ManyToMany)Descriptor.
I mentioned combinations that do not exist in the docstring in order to
help people who would search for them in the code base.
2015-09-21 22:20:42 +02:00
Aymeric Augustin
2409a4241a
Added comments in related instances descriptors.
2015-09-21 22:06:04 +02:00
Aymeric Augustin
497d915299
Documented related models descriptors.
...
Changed the poll / choices example to a more obvious parent / children.
I think that reduces the cognitive load.
2015-09-21 22:06:03 +02:00
Aymeric Augustin
005c9fc45f
Fixed #22341 -- Split django.db.models.fields.related.
...
At 2800 lines it was the largest module in the django package. This
commit brings it down to a more manageable 1620 lines.
Very small changes were performed to uniformize import style.
2015-09-21 22:05:30 +02:00
Josh Smeaton
534aaf56f4
Fixed #24629 -- Unified Transform and Expression APIs
2015-09-21 19:56:24 +10:00
Raphael Merx
f5a33e4840
Fixed #25296 -- Prevented model related object cache pollution when create() fails due to an unsaved object.
2015-09-19 20:49:13 -04:00
Aymeric Augustin
c3904deb91
Fixed #25160 (again) -- Moved data loss check on reverse relations.
...
Moved data loss check when assigning to a reverse one-to-one relation on
an unsaved instance to Model.save(). This is exactly the same change as
e4b813c
but for reverse relations.
2015-09-19 20:27:53 +02:00
Simon Charette
71ebcb85b9
Fixed #25417 -- Added a field check for invalid default values.
2015-09-18 14:31:36 -04:00
Iulia Chiriac
75ed590032
Fixed #24636 -- Added model field validation for decimal places and max digits.
2015-09-18 14:30:20 -04:00
Simon Charette
4d886db078
Removed the unused JoinPromoter.outer_votes attribute.
2015-09-17 13:47:06 -04:00
Adam Chainz
3fe3887a2e
Fixed #25377 -- Changed Count queries to execute COUNT(*) instead of COUNT('*').
2015-09-14 13:41:35 -04:00
Dražen Odobašić
b1e33ceced
Fixed #23395 -- Limited line lengths to 119 characters.
2015-09-12 11:40:50 -04:00
Nick Pope
1743efbe62
Fixed typos in django/db/models/query.py docstrings.
2015-09-07 15:47:02 -04:00
Tim Graham
2dc9ec5616
Fixed #24525 -- Fixed AssertionError in some complex queries.
...
Thanks Anssi Kääriäinen for providing the solution.
2015-09-05 07:51:17 -04:00
Tim Graham
233b46f931
Fixed #19263 -- Fixed crash when filtering using __in and an empty QuerySet.
...
Thanks Marcin Biernat for the initial patch and tests.
2015-09-04 07:44:36 -04:00
sarthakmeh
40bf18e702
Fixed #25058 -- Added GenericRelations with related_query_name to the admin's delete confirmation page.
2015-09-03 10:08:51 -04:00
Gavin Wahl
627c7eb7bf
Fixed #25335 -- Fixed regression where QuerySet.iterator() didn't return an iterator.
2015-09-03 07:35:22 -04:00
Tim Graham
0e925de245
Removed obsolete TODO about moving CommaSeparatedIntegerField into contrib.
2015-09-01 09:13:20 -04:00
Tim Graham
064d4b1cb0
Fixed #25320 -- Reverted ManyToManyField.null to False for backwards compatibility.
...
Thanks Tom Christie for the report and review.
2015-09-01 07:59:39 -04:00
Maxime Lorant
5153a3bfdc
Fixed #25331 -- Removed trailing blank lines in docstrings.
2015-08-31 17:37:21 -04:00
Y3K
cbcf78fa94
Fixed #25252 -- Added friendly error message on incorrect .select_related() use
...
Using select_related() after .values() or .values_list() is not possible
because .values() or .values_list() already got the values they need.
2015-08-31 15:13:59 +10:00
Alex Hill
7bec480fe2
Fixed #24201 -- Added order_with_respect_to support to GenericForeignKey.
2015-08-27 09:20:17 -04:00
Markus Holtermann
e1427cc609
Fixed #24590 -- Cached calls to swappable_setting.
...
Moved the lookup in Field.swappable_setting to Apps, and added
an lru_cache to cache the results.
Refs #24743
Thanks Marten Kenbeek for the initial work on the patch. Thanks Aymeric
Augustin and Tim Graham for the review.
2015-08-27 17:06:21 +10:00
sarthakmeh
4bc00defd0
Fixed #14217 -- Added validation for field name collision when using model inheritance.
2015-08-25 16:16:54 -04:00
Tim Graham
333cbdcd2d
Fixed #24951 -- Fixed AssertionError in delete queries involving a foreign/primary key.
...
Thanks Anssi Kääriäinen for help.
2015-08-20 08:14:16 -04:00
Valentina Mukhamedzhanova
1f7b25c1a7
Fixed #24986 -- Added support for annotations in DISTINCT queries.
2015-08-15 08:23:32 -04:00
Alex Hill
98bcdfa8bd
Fixed #25064 -- Allowed empty join columns.
2015-08-15 07:26:44 -04:00
Valentina Mukhamedzhanova
6bd7ee4eab
Made Options.get_base_chain() always return a list.
2015-08-14 13:15:31 -04:00
Ion Scerbatiuc
0cc059cd10
Fixed #25172 -- Fixed check framework to work with multiple databases.
2015-08-12 18:00:26 -04:00
Tim Graham
5980b05c1f
Fixed #25160 -- Moved unsaved model instance data loss check to Model.save()
...
This mostly reverts 5643a3b51b
and
81e1a35c36
.
Thanks Carl Meyer for review.
2015-08-10 08:51:32 -04:00
Tim Graham
770449e24b
Removed unused Field.get_flatchoices() method.
...
Unused since c2ba59fc1d
(Django 1.0).
Thanks Andy Baker for the report.
2015-08-03 13:08:24 -04:00
risicle
5d60d2b457
Adjusted SQLCompiler.get_order_by()'s docstring return value.
2015-07-28 10:49:26 -04:00
Tim Graham
adc0c4fbac
Fixed #18556 -- Allowed RelatedManager.add() to execute 1 query where possible.
...
Thanks Loic Bistuer for review.
2015-07-28 09:28:25 +07:00
Flavio Curella
c2e70f0265
Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField
2015-07-27 18:28:13 -04:00
Mitchell Kotler
6024fd5dc2
Fixed #25095 -- Fixed annotate() + values() group by bug
...
Thanks Josh Smeaton for help on the tests.
2015-07-27 07:44:48 -04:00
Matt Johnson
e063ac2fae
Fixed #12768 -- Fixed QuerySet.raw() regression on FK with custom db_column.
2015-07-23 18:07:38 -04:00
Edward Henderson
f8cc464452
Fixed #16501 -- Added an allow_unicode parameter to SlugField.
...
Thanks Flavio Curella and Berker Peksag for the initial patch.
2015-07-17 13:48:58 -04:00
Thomas Stephenson
035b0fa60d
Fixed #24716 -- Deprecated Field._get_val_from_obj()
...
The method duplicates the functionality of Field.value_from_object()
and has the additional downside of being a privately named public
API method.
2015-07-14 09:13:22 -04:00
Anssi Kääriäinen
6f403056f0
Fixed #24923 -- errored out nicely when using aggregates in order_by()
2015-07-13 08:36:25 -04:00
Simon Charette
07577a2d05
Fixed #25081 -- Prevented DISTINCT ON ordering from being cleared in get().
...
Thanks to pdewacht for the patch.
2015-07-09 16:00:52 -04:00
Chris Lamb
61f3e22e38
Fixed #25054 -- Added app_label to swapped model AttributeError
2015-07-02 14:18:10 -04:00
William Schwartz
9a5cfa05a0
Fixed #24997 -- Enabled bulk_create() on proxy models
2015-07-02 13:53:51 -04:00
Michael Tänzer
3bbaf84d65
Fixed #18247 -- Added cast to NUMERIC for Decimals on sqlite
...
On sqlite the SUM() of a decimal column doesn't have a NUMERIC type so
when comparing it to a string literal (which a Decimal gets converted to
in Django) it is not compared as expected.
2015-06-30 18:27:42 -04:00
Jonas Degrave
4352e865a7
Fixed #24911 -- Made BaseManager.get_queryset() allow custom queryset args.
2015-06-30 13:48:30 -04:00
Andriy Sokolovskiy
7866968eb3
Removed unused condition for the abstract model in ensure_default_manager()
2015-06-29 21:17:19 -04:00
Anssi Kääriäinen
9ed82154bd
Fixed #23791 -- Corrected object type check for pk__in=qs
...
When the pk was a relation field, qs.filter(pk__in=qs) didn't work.
In addition, fixed Restaurant.objects.filter(place=restaurant_instance),
where place is an OneToOneField and the primary key of Restaurant.
A big thank you to Josh for review and to Tim for review and cosmetic
edits.
Thanks to Beauhurst for commissioning the work on this ticket.
2015-06-29 07:49:31 -04:00
Tim Graham
7da3923ba0
Sorted imports in __init__.py files.
2015-06-27 11:53:33 -04:00
Greg Chapple
4a66a69239
Fixed #24887 -- Removed one-arg limit from models.aggregate
2015-06-27 11:44:33 -04:00
薛丞宏
d3e12c9017
Fixed #25016 -- Reallowed non-ASCII values for ForeignKey.related_name on Python 3.
2015-06-26 08:30:05 -04:00
Tim Graham
aaacaeb096
Renamed RemovedInDjangoXYWarnings for new roadmap.
...
Forwardport of ae1d663b79
from stable/1.8.x plus more.
2015-06-24 16:08:20 -04:00
Markus Holtermann
d3d66d4722
Fixed #24940 -- Made model managers hashable
...
Thanks Federico Jaramillo Martínez for the report and Tim Graham for the
test and review.
2015-06-19 19:02:01 +02:00
Gagaro
74261bc593
Fixed #24873 -- Prevented nested Prefetch objects from being overwritten.
2015-06-18 15:42:47 -04:00
Tim Graham
3872a33132
Fixed #24979 -- Removed usage of inspect.getargspec().
2015-06-15 13:43:22 -04:00
Tim Graham
4b600ed244
Removed django.utils.functional.total_ordering()
2015-06-15 13:15:24 -04:00
Brian King
bfb5b7150f
Fixed #24912 -- Fixed prefetch_related failure for UUIDField primary keys
...
This resolves a problem on databases besides PostgreSQL when using
prefetch_related with a source model that uses a UUID primary key.
2015-06-15 09:37:38 -04:00
Cole Maclean
20ff296cb1
Fixed #24859 -- Made QuerySet.get() with UUIDField raise TypeError on bad value.
...
For consistency with AutoField.
2015-06-06 19:46:05 -04:00
Andriy Sokolovskiy
08232ef84d
Fixed #24744 - Fixed relabeled_clone for the Transform
2015-06-06 09:04:53 -04:00
Mark Lavin
541f4ea546
Fixed #24924 -- Join promotion for multiple Case expressions
2015-06-05 12:22:43 -04:00
Tim Graham
6b41834855
Minor edits to Greatest/Least docs; refs #24767 .
2015-06-05 11:40:10 -04:00
Andriy Sokolovskiy
286d0e6ab1
Refs #24833 -- Forwardported some of "Fixed Case expressions with exclude()."
...
Partial forwardport of 469f1e362b
from stable/1.8.x
as the issue was already fixed in master.
2015-06-05 11:21:31 -04:00
Ian Foote
4ab53a558a
Fixed #24767 -- Added Greatest and Least expressions
...
Greatest and Least are row-level Function versions of Min and Max.
2015-06-05 11:15:33 +01:00
Matthew Somerville
2dc93bb10a
Fixed #22316 -- Added time filters to TimeField on SQLite.
...
This was implemented for non-SQLite backends in 1.7 (as a
side effect of #16187 ).
2015-06-04 22:27:13 -04:00
Rolo
19e67c6cd1
Fixed #24677 -- Made TextField.to_python() return a string.
...
This is consistent with CharField.
2015-06-04 09:02:54 -04:00
Adam Chainz
23048d186c
Fixed #24866 -- Added Now() database function
2015-06-02 17:59:01 -04:00
Andriy Sokolovskiy
2913d6b77d
Fixed #24831 -- Fixed pickling queryset with prefetch_related() after deleting objects.
2015-06-02 09:54:53 -04:00
Jon Dufresne
44f3ee7716
Fixed #9596 -- Added date transform for DateTimeField.
2015-06-02 08:49:10 -04:00
Josh Smeaton
c7805ee214
Fixed #24699 -- Added aggregate support for DurationField on Oracle
2015-05-30 20:41:33 -04:00
Paweł Marczewski
801a84ae32
Fixed #24835 -- Fixed QuerySet.exists() after an annotation with Count()
...
QuerySet.exists() incorrectly handled query.group_by = True
case (grouping by all select fields), causing GROUP BY
expressions to be wiped along with select fields.
2015-05-25 20:46:20 -04:00
Alexander Sosnovskiy
04e8d890ae
Fixed #16891 -- Made Model/QuerySet.delete() return the number of deleted objects.
2015-05-22 13:27:16 -04:00
Anssi Kääriäinen
bc87061a3c
Fixed #24705 -- Fixed negated Q objects in expressions.
...
Avoided split_exclude() for Q when used as an expression.
2015-05-20 09:41:04 -04:00
Alasdair Nicol
d091b75eef
Fixed #24818 -- Prevented models.CharField from accepting a string as max_length
2015-05-19 08:06:39 -04:00
Aymeric Augustin
54026f1e8d
Renamed value_to_db_xxx to adapt_xxxfield_value.
...
This mirrors convert_xxxfield_value nicely, taking advantage of the
adapter/converter terminology which is commonly used by DB-API modules.
2015-05-17 09:39:34 +02:00
Aymeric Augustin
d9521f66b1
Removed global timezone-aware datetime adapters.
...
Refs #23820 .
Fixed #19738 .
Refs #17755 . In order not to introduce a regression for raw queries,
parameters are passed through the connection.ops.value_to_db_* methods,
depending on their type.
2015-05-17 09:38:48 +02:00
Tim Graham
eda12ceef1
Removed redundant list() calls.
2015-05-16 10:44:07 -04:00
Piotr Jakimiak
4157c502a5
Removed unnecessary arguments in .get method calls
2015-05-13 20:51:18 +02:00
Abhaya Agarwal
9de9c24017
Fixed #24105 -- Called Storage.get_valid_name() when upload_to is callable
2015-05-12 20:08:22 -04:00
Andriy Sokolovskiy
f7b2978158
Fixed #24156 -- Fixed inherited related name of ManyToManyField.
...
Fixed situation when parent abstract model declares related_name='+',
and child models had an invalid queryset.
2015-05-12 19:14:55 -04:00
Anssi Kääriäinen
adc57632bc
Fixed #24748 -- Fixed incorrect GROUP BY on MySQL in some queries
...
When the query's model had a self-referential foreign key, the
compiler.get_group_by() code incorrectly used the self-referential
foreign key's column (for example parent_id) as GROUP BY clause
when it should have used the model's primary key column (id).
2015-05-11 11:42:27 -04:00
Anssi Kääriäinen
be9d645346
Fixed #24766 -- Added join promotion for Case expressions
2015-05-11 11:16:16 -04:00
Matt Robenolt
8a54526592
Removed redundant removal of hyphens in UUIDField.
2015-05-11 07:11:50 -04:00
Tim Graham
b99114f67f
Fixed #24758 -- Corrected Options.get_fields() docstring.
2015-05-08 13:18:48 -04:00
Pradeek
6123e6134f
Fixed #24708 -- Handled non-string values in GenericIPAddressField.to_python()
2015-05-06 07:03:31 -04:00
Anssi Kääriäinen
7b05d2fdae
Fixed #24752 -- query crash when reusing Case expressions
...
Case expressions weren't copied deep enough (self.cases list was
reused resulting in an error).
2015-05-05 11:38:12 -04:00
Luis Del Giudice
69ddc1b3da
Fixed #24693 -- Added label and label_lower property to Model._meta
2015-05-02 16:58:18 +02:00