sage
6789ded0a6
Fixed #12990 , Refs #27694 -- Added JSONField model field.
...
Thanks to Adam Johnson, Carlton Gibson, Mariusz Felisiak, and Raphael
Michel for mentoring this Google Summer of Code 2019 project and
everyone else who helped with the patch.
Special thanks to Mads Jensen, Nick Pope, and Simon Charette for
extensive reviews.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2020-05-08 07:23:31 +02:00
François Freitag
abea86f9e4
Removed unnecessary tuple wrapping of single format string argument.
2020-04-27 08:30:16 +02:00
Tim Schilling
a92cc84b4a
Refs #31369 -- Deprecated models.NullBooleanField in favor of BooleanField(null=True).
2020-04-24 10:10:45 +02:00
miigotu
210657b791
Fixed #28184 -- Allowed using a callable for FileField and ImageField storage.
2020-04-08 11:26:17 +02:00
Adam Johnson
9e1b6b8a66
Fixed #23916 -- Allowed makemigrations to handle related model name case changes.
...
Made autodetector ignore related model name case changes so unnecessary
migrations are not created.
2020-03-25 10:39:34 +01:00
Matheus Cunha Motta
e908eb6287
Fixed #31310 -- Fixed hints in checks for using intermediate model with ambiguous foreign key.
...
symmetrical=False is not required since
87b1ad6e73
.
2020-02-28 08:38:57 +01:00
Valze
5bf28ac2ed
Fixed #31185 -- Fixed detecting of unique fields in ForeignKey/ForeignObject checks when using Meta.constraints.
2020-02-27 10:53:29 +01:00
Taoup
271fdab8b7
Fixed #31286 -- Made database specific fields checks databases aware.
...
Follow up to 0b83c8cc4d
.
2020-02-24 14:23:46 +01:00
Carlton Gibson
a34cb5a6d4
Refs #31282 -- Clarified M2O add/remove/set with PK behaviour.
...
Improved error message for remove() and added tests.
2020-02-18 19:54:29 +01:00
Xavier Francisco
8690878507
Fixed #31277 -- Relaxed system check of m2m intermediary tables for db_table collision when database routers are installed.
...
Turned the error into a warning when database routers are installed.
2020-02-17 13:53:45 +01:00
Hasan Ramezani
da79ee472d
Fixed #26813 -- Prevented empty choice in ModelChoiceField with RadioSelect for fields with blank=False.
2020-02-05 10:27:01 +01:00
Adam Johnson
c1b24718e0
Cached ForeignObject.(local/foreign/reverse)_related_fields properties.
2020-01-31 14:07:52 +01:00
Hasan Ramezani
a97111eabf
Fixed 31207 -- Prevented references to non-local remote fields in ForeignKey.to_field.
...
Thanks Simon Charette for the initial patch and review.
2020-01-31 10:19:12 +01:00
Adam Johnson
1e0dcd6c8b
Used constant instead of hard-coded value for recursive relationship.
2020-01-16 08:34:58 +01:00
Carlton Gibson
29c126bb34
Fixed #31124 -- Fixed setting of get_FOO_display() when overriding inherited choices.
...
Regression in 2d38eb0ab9
2020-01-15 15:35:22 +01:00
Mariusz Felisiak
6f7998adc7
Fixed #31155 -- Fixed a system check for the longest choice when a named group contains only non-string values.
...
Regression in b6251956b6
.
Thanks Murat Guchetl for the report.
2020-01-11 19:47:36 +01:00
Hasan Ramezani
f600e3fad6
Fixed #21238 -- Fixed restoring attributes when pickling FileField and ImageField.
2020-01-09 09:37:59 +01:00
Hasan Ramezani
a3fc24f014
Fixed #31095 -- Made RelatedManager.set() preserve existing m2m relations with an invalid type.
2019-12-19 13:33:05 +01:00
Baptiste Mispelon
26cab4e8c1
Fixed #31046 -- Allowed RelatedManager.add()/create()/set() to accept callable values in through_defaults.
2019-12-03 19:47:38 +01:00
Baptiste Mispelon
c50839fccf
Simplified RelatedManager._add_items() a bit.
...
Added early return in RelatedManager._add_items() to decrease an
indentation level.
2019-12-03 19:47:32 +01:00
Simon Charette
379bf1a2d4
Fixed #8467 -- Prevented crash when adding existent m2m relation with an invalid type.
...
This was an issue anymore on backends that allows conflicts to be
ignored (Refs #19544 ) as long the provided values were coercible to the
expected type. However on the remaining backends that don't support
this feature, namely Oracle, this could still result in an
IntegrityError.
By attempting to coerce the provided values to the expected types in
Python beforehand we allow the existing value set intersection in
ManyRelatedManager._get_missing_target_ids to prevent the problematic
insertion attempts.
Thanks Baptiste Mispelon for triaging this old ticket against the
current state of the master branch.
2019-11-22 09:08:10 +01:00
Caio Ariede
555bebe774
Fixed #30987 -- Added models.PositiveBigIntegerField.
2019-11-19 09:34:11 +01:00
Hasan Ramezani
dc60597eb6
Refs #30095 -- Added Field._choices_is_value().
...
This allows fields classes to override the validation of choices'
values.
2019-11-05 11:48:44 +01:00
Carlton Gibson
2d38eb0ab9
Fixed #30931 -- Restored ability to override Model.get_FIELD_display().
...
Thanks Sergey Fedoseev for the implementation idea.
Regression in a68ea23101
.
2019-11-04 07:55:34 +01:00
Mariusz Felisiak
a9bd01d363
Refs #30095 -- Simplified Field._check_choices() a bit.
...
Using an internal is_value() hook to check whether Field.choices
is iterable is misleading.
2019-10-31 20:04:47 +01:00
Dan Moore
bc94e3c1a2
Fixed #29919 -- Fixed RelatedOnlyFieldListFilter crash with reverse relationships.
2019-10-23 10:50:31 +02:00
Alex Aktsipetrov
681f7e2b13
Fixed #20577 -- Deferred filtering of prefetched related querysets.
...
Added internal interface to QuerySet that allows to defer next filter
call till .query is accessed. Used it to optimize prefetch_related().
Thanks Simon Charette for the review.
2019-10-21 13:21:54 +02:00
sage
6f82df69ef
Refs #12990 -- Moved CheckFieldDefaultMixin to the django.db.models.fields.mixins.
2019-10-17 12:30:29 +02:00
Mads Jensen
129583a0d3
Removed some outdated backwards compatibility imports and misleading comments.
...
EmptyResultSet moved in 46509cf13d
.
FieldDoesNotExist moved in 8958170755
.
BoundField and pretty_name moved in 8550161e53
.
EMPTY_VALUES moved in 471596fc1a
.
BaseRunserverCommand moved in 5c53e30607
.
2019-09-24 15:18:53 +02:00
Johannes Hoppe
7254f1138d
Refs #29444 -- Allowed returning multiple fields from INSERT statements on PostgreSQL.
...
Thanks Florian Apolloner, Tim Graham, Simon Charette, Nick Pope, and
Mariusz Felisiak for reviews.
2019-09-09 10:51:14 +02:00
Nick Pope
b6251956b6
Fixed #30757 -- Added a system check to ensure max_length fits the longest choice.
2019-09-09 10:28:18 +02:00
Simon Charette
600628f8f0
Refs #28442 -- Adjusted related lookups handling of expression rhs.
...
Expressions should never be prepared as other Lookup.get_prep_lookup
implementations hint at by returning early on the presence of the
resolve_expression attribute.
The previous solution was only handling lookups against related fields
pointing at AutoFields and would break for foreign keys to other fields.
It was also causing bidirectional coupling between model fields and
expressions which the method level import of OuterRef was a symptom of.
2019-09-02 10:52:36 +02:00
Nick Pope
21e559495b
Fixed #29979 , Refs #17337 -- Extracted AutoField field logic into a mixin and refactored AutoFields.
...
This reduces duplication by allowing AutoField, BigAutoField and
SmallAutoField to inherit from IntegerField, BigIntegerField and
SmallIntegerField respectively. Doing so also allows for enabling the
max_length warning check and minimum/maximum value validation for auto
fields, as well as providing a mixin that can be used for other possible
future auto field types such as a theoretical UUIDAutoField.
2019-08-20 09:22:25 +02:00
Claude Paroz
d1c2e6dd04
Refs #28428 -- Made FileField.upload_to support pathlib.Path.
2019-08-18 20:34:58 +02:00
zeyneloz
00035672a4
Fixed #30449 -- Fixed RelatedFieldListFilter/RelatedOnlyFieldListFilter to respect model's Meta.ordering.
...
Regression in 6d4e5feb79
.
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2019-08-15 10:29:05 +02:00
Mads Jensen
0b8d911d28
Optimized Field.deconstruct() by using elif.
2019-08-14 10:50:31 +02:00
Diederik van der Boor
25f21bd237
Fixed #28393 -- Added helpful error messages for invalid AutoField/FloatField/IntegerField values.
...
Co-authored-by: Diederik van der Boor <vdboor@edoburu.nl>
Co-authored-by: Nick Pope <nick.pope@flightdataservices.com>
2019-08-05 08:41:29 +02:00
Nick Pope
194d1dfc18
Fixed #30661 -- Added models.SmallAutoField.
2019-08-02 11:39:01 +02:00
Jon Dufresne
4122d9d3f1
Refs #28147 -- Fixed setting of OneToOne and Foreign Key fields to None when using attnames.
...
Regression in 519016e5f2
.
2019-07-27 12:04:56 +02:00
Jon Dufresne
5ed20b3aa3
Fixed #30657 -- Allowed customizing Field's descriptors with a descriptor_class attribute.
...
Allows model fields to override the descriptor class used on the model
instance attribute.
2019-07-25 08:15:20 +02:00
Jon Dufresne
93ffa81bc5
Refs #30657 -- Made DeferredAttribute.__init__() to take a field instance instead of a field name.
2019-07-25 07:24:52 +02:00
Jon Dufresne
42b9a23267
Fixed #30400 -- Improved typography of user facing strings.
...
Thanks Claude Paroz for assistance with translations.
2019-06-28 16:46:18 +02:00
Nadège Michel
87b1ad6e73
Fixed #30421 -- Allowed symmetrical intermediate table for self-referential ManyToManyField.
2019-06-21 15:03:17 +02:00
Rob
519016e5f2
Fixed #28147 -- Fixed loss of assigned parent when saving child after parent.
...
Thanks Erwin Junge for the initial patch.
2019-05-21 10:11:22 +02:00
Rob
c231a75112
Fixed #30436 -- Added check that on_delete is callable in ForeignKey and OneToOneField.
2019-05-13 07:25:42 +02:00
Tobias Kunze
a44a21a22f
Fixed #26678 -- Doc'd that RelatedManager.add()/remove()/set() accepts the field the relation points to.
2019-05-07 08:55:45 +02:00
Mykola Kokalko
ef082ebb84
Fixed #29529 -- Allowed models.fields.FilePathField to accept a callable path.
2019-05-02 11:11:56 +02:00
Jon Dufresne
dbe436a9a9
Simplified Field.contribute_to_class().
2019-04-29 07:54:32 +02:00
Scott Fitsimones
a14c0fda15
Fixed #30328 -- Fixed crash of IntegerField.validators when limit_value in a custom validator is callable.
2019-04-19 07:58:27 +02:00
Ramiro Morales
aed89adad5
Fixed #30367 -- Changed "pip install" to "python -m pip install" in docs, comments and hints.
2019-04-18 14:41:15 +02:00