Nick Pope
d13a9e44de
Fixed #28909 -- Simplified code using tuple/list/set/dict unpacking.
2017-12-11 07:08:45 -05:00
Дилян Палаузов
87c76aa116
Fixed #28873 -- Used dict.setdefault() to set model and form field defaults.
2017-12-04 13:28:48 -05:00
Sergey Fedoseev
bdb747a5f2
Simplified Field.get_choices().
2017-11-11 19:38:29 -05:00
Mariusz Felisiak
d896809a3a
Refs #23919 -- Removed unneeded float()/int() calls.
2017-10-02 08:49:26 -04:00
Simon Charette
13be453080
Refs #28492 -- Stopped accessing settings at Field.db_tablespace initialization.
...
Deferring accesses to settings allows database fields to be initialized before
settings are loaded.
2017-09-11 12:21:49 -04:00
Sergey Fedoseev
5b1c389603
Refs #23919 -- Replaced usage of django.utils.functional.curry() with functools.partial()/partialmethod().
2017-09-06 13:11:18 -04:00
Paulo
bfb746f983
Refs #16043 -- Refactored internal fields value cache.
...
* Removed all hardcoded logic for _{fieldname}_cache.
* Added an internal API for interacting with the field values cache.
Thanks carljm and MarkusH for support.
2017-08-10 12:06:02 -04:00
Mariusz Felisiak
b61d5b1991
Fixed #28371 -- Fixed Cast() with CharField if the max_length argument isn't provided.
...
Thanks Tim Graham for the review.
2017-07-27 19:36:47 +02:00
Mariusz Felisiak
8e41373c81
Allowed database backends to specify data types for Cast().
...
A small refactor ahead of refs #28371 .
2017-07-26 20:26:58 -04:00
Sergey Fedoseev
37fbeb99f9
Removed unused models.DecimalField._format().
...
Unused since b3b71a0922
.
2017-07-20 09:00:18 -04:00
Mariusz Felisiak
776cee9749
Fixed #28391 -- Fixed Cast() with CharField and max_length on MySQL.
...
Thanks Tim Graham for the review.
2017-07-17 21:12:27 +02:00
Maciej Jaworski
dc63ad7ac0
Fixed #28319 -- Made TextField with choices use a Select widget.
2017-06-17 08:23:32 -04:00
chillaranand
fb0f987f7d
Fixed #27914 -- Added support for nested classes in Field.deconstruct()/__repr__().
2017-06-14 10:10:17 -04:00
Tim Graham
5a52d932ef
Replaced Model._get_pk_val() with pk property.
...
Model.pk was added after _get_pk_val() and many places weren't simplified.
2017-06-05 15:20:34 -04:00
Tim Graham
a9874d48b1
Fixed #28188 -- Fixed crash when pickling model fields.
...
Regression in d2a26c1a90
.
Thanks Adam Alton for the report and test, and Adam Johnson for
suggesting the fix.
2017-05-11 21:04:52 -04:00
Claude Paroz
a87189fc5e
Fixed #28164 -- Improved float conversions in DecimalField.to_python
...
Thanks Tim Graham and Adam Johnson for the reviews.
2017-05-09 08:40:08 +02:00
Claude Paroz
301de774c2
Refs #27795 -- Replaced many force_text() with str()
...
Thanks Tim Graham for the review.
2017-04-27 09:10:02 +02:00
Carles Pina Estany
9f2e8b5bb7
Fixed #28120 -- Checked that CharField.max_length is not a boolean.
2017-04-24 18:49:31 -04:00
Kapil Garg
7e09fa7f51
Fixed #27969 -- Fixed models.Field.formfield() setting 'disabled' for fields with choices.
2017-03-23 13:22:04 -04:00
Adam Chainz
a452dddb25
Fixed #27904 -- Added a system check that Field.validators are callable.
2017-03-11 12:27:29 -05:00
Claude Paroz
8346680e1c
Refs #27795 -- Removed unneeded force_text calls
...
Thanks Tim Graham for the review.
2017-03-04 18:18:21 +01:00
Anton Samarchyan
60e52a047e
Refs #27656 -- Updated django.db docstring verbs according to PEP 257.
2017-02-28 09:17:27 -05:00
Alexey Rogachev
c743af82cf
Fixed typo in DurationField's docstring.
2017-02-20 08:44:05 -05:00
ClairePhila
d26413113c
Refs #27148 -- Fixed UUIDField.to_python(None) crash.
...
Regression in 2f9861d823
.
2017-02-10 13:54:52 -05:00
ClairePhila
edad02af06
Allow UUIDField to be None when deserializing
2017-02-10 17:26:02 +01:00
Claude Paroz
c651331b34
Converted usage of ugettext* functions to their gettext* aliases
...
Thanks Tim Graham for the review.
2017-02-07 09:04:04 +01:00
Vytis Banaitis
8838d4dd49
Refs #23919 -- Replaced kwargs.pop() with keyword-only arguments.
2017-02-01 11:41:56 -05:00
Vytis Banaitis
d1bab24e01
Refs #23919 , #27778 -- Removed obsolete mentions of unicode.
2017-01-26 08:19:27 -05:00
chillaranand
d6eaf7c018
Refs #23919 -- Replaced super(ClassName, self) with super().
2017-01-25 12:23:46 -05:00
Claude Paroz
042b7350a0
Refs #23919 -- Removed unneeded str() calls
2017-01-20 14:13:55 +01:00
Simon Charette
cecc079168
Refs #23919 -- Stopped inheriting from object to define new style classes.
2017-01-19 08:39:46 +01:00
Claude Paroz
7b2f2e74ad
Refs #23919 -- Removed six.<various>_types usage
...
Thanks Tim Graham and Simon Charette for the reviews.
2017-01-18 20:18:46 +01:00
Claude Paroz
f3c43ad1fd
Refs #23919 -- Removed python_2_unicode_compatible decorator usage
2017-01-18 13:44:34 +01:00
Claude Paroz
d7b9aaa366
Refs #23919 -- Removed encoding preambles and future imports
2017-01-18 09:55:19 +01:00
Tim Graham
933dc62742
Refs #16508 -- Removed virtual aliases of "private fields".
...
Per deprecation timeline.
2017-01-17 20:52:03 -05:00
Tim Graham
bcf3532ede
Refs #26154 -- Removed deprecated CommaSeparatedIntegerField.
2017-01-17 20:52:02 -05:00
Tim Graham
733c7c7030
Refs #24716 -- Removed Field._get_val_from_obj() per deprecation timeline.
2017-01-17 20:52:00 -05:00
Tim Graham
625e9da9ca
Removed Field.rel and Field.remote_field.to per deprecation timeline.
2017-01-17 14:09:28 -05:00
Tim Graham
09a7f121b5
Removed unneeded values in NullBooleanField.formfield().
...
These values are duplicated in the super().
2016-12-20 07:54:54 -05:00
Adam Chainz
d2a26c1a90
Optimized Model instantiation a bit.
...
* Avoid some unnecessary attribute lookups, e.g. access signals directly rather than from module
* Alias some repeat accesses inside the method to use the slightly faster local lookups
* Use tuple to iterate remaining kwargs as it's faster to construct
* Cache Field.get_default() to avoid running through all the logic on every call
* Use a cached list of the properties on the model class to avoid repeat isinstance() calls
2016-12-15 13:42:44 -05:00
Morgan Aubert
ef889d5b10
Fixed #27599 -- Fixed Field.__str__() crash for fields not attached to models.
2016-12-14 14:04:26 -05:00
Adam Chainz
6252fd6314
Fixed #27532 -- Deprecated Model._meta.has_auto_field
2016-11-25 13:24:11 -05:00
Ramin Farajpour Cami
967be82443
Fixed E305 flake8 warnings.
2016-11-14 12:30:46 -05:00
Tim Graham
2f9861d823
Fixed #27148 -- Fixed ModelMultipleChoiceField crash with invalid UUID.
2016-10-31 15:21:05 -04:00
Chris Lamb
9027e6c8a3
Fixed #27235 -- Removed some usage of mutable default arguments.
2016-09-16 15:48:08 -04:00
Claude Paroz
2ced2f785d
Replaced smart_* by force_* calls whenever possible
...
The smart_* version should only be used when a lazy string should keep
its lazy status.
2016-09-03 13:46:41 +02:00
Eduard Stepanov
49b4596cb4
Fixed #26786 -- Avoided redundant max value validators on integer fields.
2016-06-28 11:39:20 -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
Michal Petrucha
effb4ed6f5
Replaced a hardcoded LOOKUP_SEP in models/fields/__init__.py
2016-06-09 11:57:00 -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
Tim Graham
eab5df12b6
Refs #22936 -- Moved more of Field.get_db_prep_lookup() to lookups.
2016-05-02 07:58:24 -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
901dc90db0
Removed unused/untested Field.get_choices_default()/value_to_string() methods.
2016-04-25 08:05:27 -04: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
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
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
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
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
Brobin
dca8b916ff
Fixed #26154 -- Deprecated CommaSeparatedIntegerField
2016-02-10 17:57:43 -05:00
Alexander Sosnovskiy
2a7ce34600
Fixed #14286 -- Added models.BigAutoField.
2015-12-25 20:01:31 -05:00
Alexander Sosnovskiy
b61eab18f7
Fixed #13774 -- Added models.Field.rel_db_type().
2015-12-04 07:55:41 -05: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
Josh Smeaton
534aaf56f4
Fixed #24629 -- Unified Transform and Expression APIs
2015-09-21 19:56:24 +10: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
Tim Graham
0e925de245
Removed obsolete TODO about moving CommaSeparatedIntegerField into contrib.
2015-09-01 09:13:20 -04:00
Alex Hill
7bec480fe2
Fixed #24201 -- Added order_with_respect_to support to GenericForeignKey.
2015-08-27 09:20:17 -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
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
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
Tim Graham
7da3923ba0
Sorted imports in __init__.py files.
2015-06-27 11:53:33 -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
Tim Graham
4b600ed244
Removed django.utils.functional.total_ordering()
2015-06-15 13:15:24 -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
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
Jon Dufresne
44f3ee7716
Fixed #9596 -- Added date transform for DateTimeField.
2015-06-02 08:49:10 -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
Piotr Jakimiak
4157c502a5
Removed unnecessary arguments in .get method calls
2015-05-13 20:51:18 +02:00
Matt Robenolt
8a54526592
Removed redundant removal of hyphens in UUIDField.
2015-05-11 07:11:50 -04:00
Pradeek
6123e6134f
Fixed #24708 -- Handled non-string values in GenericIPAddressField.to_python()
2015-05-06 07:03:31 -04:00
Jon Dufresne
b5e0eede40
Fixed #22394 -- Refactored built-in datetime lookups to transforms.
2015-04-20 15:11:11 -04:00
Anssi Kääriäinen
8f30556329
Renamed Field.rel attribute to remote_field
...
Field.rel is now deprecated. Rel objects have now also remote_field
attribute. This means that self == self.remote_field.remote_field.
In addition, made the Rel objects a bit more like Field objects. Still,
marked ManyToManyFields as null=True.
2015-03-25 08:16:12 -04:00
David Szotten
80e3444eca
Fixed #24483 -- Prevented keepdb from breaking with generator choices.
...
If Field.choices is provided as an iterator, consume it in __init__ instead
of using itertools.tee (which ends up holding everything in memory
anyway). Fixes a bug where deconstruct() was consuming the iterator but
bypassing the call to `tee`.
2015-03-24 11:42:53 -04:00
Michael Angeletti
ea3168dc6c
Fixed #24376 -- added verbose_name arg to UUIDField
2015-02-21 13:27:49 -05:00
Marc Tamlyn
4755f8fc25
Fixed #24343 -- Ensure db converters are used for foreign keys.
...
Joint effort between myself, Josh, Anssi and Shai.
2015-02-20 11:35:51 +00:00
Josh Smeaton
de0241eb98
Fixed #24319 -- Added validation for UUID model field
2015-02-13 09:45:53 +11:00
Tim Graham
2d7c27d387
Fixed #24302 -- Added DurationField.formfield()
2015-02-09 10:20:01 -05:00
Tim Graham
0f54cf28c0
Added UUIDField.deconstruct()
2015-02-05 19:15:02 -05:00
Anssi Kääriäinen
8adc59038c
Fixed #23617 -- Added get_pk_value_on_save()
...
The method is mainly intended for use with UUIDField. For UUIDField we
want to call the field's default even when primary key value is
explicitly set to None to match the behavior of AutoField.
Thanks to Marc Tamlyn and Tim Graham for review.
2015-02-03 09:23:44 -05:00
Loic Bistuer
84b6c76830
Fixed #24210 -- Cleaned up relational fields __init__().
...
Thanks Collin Anderson and Tim Graham for the reviews.
2015-01-27 22:35:49 +07:00