Commit Graph

807 Commits

Author SHA1 Message Date
Daniel Hahler 683341db43 Condensed some widgets code. 2018-03-03 13:35:09 -05:00
François Freitag a2e97abd81 Fixed #29159 -- Made ModelChoiceIterator reuse QuerySet result cache.
When __len__() is called (e.g. when casting to list or tuple), the
QuerySet is evaluated and the result cache populated. iterator()
shouldn't be called on the QuerySet after that, as it would reset the
result cache and trigger a second query.
2018-03-01 14:17:56 -05:00
François Freitag 40f0aa9885 Fixed #29158 -- Fixed len(choices) crash if ModelChoiceField's queryset is a manager.
Removing all() in __iter__() prevents a duplicate query when choices are
cast to a list and there's a prefetch_related().
2018-03-01 14:12:14 -05:00
Mariusz Felisiak 074a2f7f58
Refs #28909 -- Simplifed code using unpacking generalizations. 2018-02-26 18:23:31 +01:00
Herbert Parentes Fortes Neto d368784bac Fixed #28171 -- Added an exception if Form's empty_permitted and use_required_attribute arguments conflict. 2018-02-15 13:44:26 -05:00
Tim Graham 16ee53d7bb
Fixed #29113 -- Simplified django.forms.formsets.all_valid() and clarified docstring. 2018-02-05 10:29:38 -05:00
Vlastimil Zíma fbc3c29e7c Fixed #29036 -- Fixed HTML5 required validation on SelectDateWidget if the attribute is added by JavaScript.
Thanks Tim Graham for the initial patch.
2018-01-30 19:09:31 -05:00
Tim Graham 5538729e4e
Fixed #29089 -- Avoided redundant date parsing in SelectDateWidget.format_value(). 2018-01-30 18:11:05 -05:00
Jon Dufresne ff05de760c Fixed #29038 -- Removed closing slash from HTML void tags. 2018-01-21 02:09:10 -05:00
Jon Dufresne 47d238b696 Fixed #29041 -- Changed SelectMultiple's multiple attribute to HTML5 boolean syntax. 2018-01-20 11:19:06 -05:00
Jon Dufresne 90ca9412e4 Removed unnecessary microsecond truncation in SplitDateTimeWidget.
The microseconds are already truncated by the TimeInput subwidget.
2018-01-18 11:23:06 -05:00
Jon Dufresne 3c34452ab5 Refs #23668 -- Removed passing default argument of current TZ to make_aware()/naive. 2018-01-18 11:21:12 -05:00
Дилян Палаузов a38ae914d8 Fixed #28996 -- Simplified some boolean constructs and removed trivial continue statements. 2018-01-12 12:44:50 -05:00
Sergey Fedoseev 1dce629c03 Refs #29006 -- Simplified handling of SNaN values in DecimalField.validate(). 2018-01-11 07:02:46 -05:00
Fabio Bonelli c886f3dee3 Fixed #29006 -- Fixed DecimalField.clean() crash on sNaN values. 2018-01-10 20:30:44 -05:00
Tim Graham ec2ce4517a Fixed #28882 -- Fixed cleaning of disabled MultiValueFields.
Thanks avalanchy for the initial patch.
2018-01-05 15:49:54 -05:00
Дилян Палаузов d7b2aa24f7 Fixed #28982 -- Simplified code with and/or. 2018-01-03 20:12:23 -05:00
Дилян Палаузов d79cf1e9e2 Fixed #28985 -- Removed unneeded None checks before hasattr(). 2018-01-03 11:37:06 -05:00
Mariusz Felisiak 51a00749e9
Used Decimal.scaleb() in backends.utils.format_number() and DecimalField.widget_attrs() to improve performance. 2017-12-30 18:05:15 +01:00
Дилян Палаузов 4c599ece57 Fixed #28930 -- Simplified code with any() and all(). 2017-12-26 17:11:15 -05:00
Daniil 7c7bc6391a Fixed #28874 -- Prevented double escaping of errors on hidden form fields. 2017-12-11 07:30:47 -05:00
Nick Pope d13a9e44de Fixed #28909 -- Simplified code using tuple/list/set/dict unpacking. 2017-12-11 07:08:45 -05:00
Sergey Fedoseev 23a27f2c03 Simplified widgets.Select._choice_has_empty_value(). 2017-12-08 08:14:25 +05:00
Tim Graham 2b81faab25
Fixed #28906 -- Removed unnecessary bool() calls. 2017-12-07 17:13:07 -05:00
Nick Pope e014f91a70 Fixed #28890 -- Removed newlines between MultiWidget's subwidgets.
Regression in b52c73008a.
2017-12-05 11:22:36 -05:00
Дилян Палаузов d2afa5eb23 Fixed #28860 -- Removed unnecessary len() calls. 2017-12-04 10:35:23 -05:00
Дилян Палаузов 23bf4ad87f Fixed #28795 -- Removed 'not in' checks and used dict.setdefault(). 2017-11-14 10:52:52 -05:00
Дилян Палаузов c69e4bc691 Fixed #28769 -- Replaced 'x if x else y' with 'x or y'. 2017-11-07 09:08:46 -05:00
Srinivas Reddy Thatiparthy 55b5393bd2 Fixed #28474 -- Made DurationField raise ValidationError for inputs that raised OverflowError. 2017-10-25 18:05:13 -04:00
Tim Graham 2bd207ada0 Refs #15667 -- Removed support for Widget.render() methods without the renderer argument.
Per deprecation timeline.
2017-09-22 12:51:18 -04:00
Mariusz Felisiak 0ec0e5029c Removed unnecessary parens in various code. 2017-09-13 21:20:29 -04:00
Mariusz Felisiak 0214f367bc Merged isinstance() calls. 2017-09-13 15:00:45 -04:00
Tim Graham 6e4c6281db Reverted "Fixed #27818 -- Replaced try/except/pass with contextlib.suppress()."
This reverts commit 550cb3a365
because try/except performs better.
2017-09-07 08:16:21 -04:00
Josh Schneier 48c394a6fc Fixed #28555 -- Made CharField convert whitespace-only values to the empty_value when strip is enabled. 2017-09-05 12:41:38 -04:00
Sergey Fedoseev f0d9ede9e6 Removed useless itertools.chain() call in ChoiceWidget.optgroups(). 2017-08-31 08:04:36 -04:00
caleb logan 9e2bf65d6a Fixed #28530 -- Prevented SelectDateWidget from localizing years in output. 2017-08-29 14:56:08 -04:00
Collin Anderson 751f7a6d9b Added Media.__repr__().
It makes it easier to debug MediaOrderConflictWarnings
(refs #28377).
2017-08-26 20:57:45 -04:00
Alejandro Zamora 90d7b912b9 Fixed #28201 -- Added ProhibitNullCharactersValidator and used it on CharField form field. 2017-08-12 20:14:14 -04:00
Srinivas Reddy Thatiparthy 5cb7619995 Simplified Float/DecimalField.validate() with math.isfinite(). 2017-08-09 20:41:39 -04:00
Srinivas Reddy Thatiparthy b5d47b18f1 Removed unnecessary else in SelectDateWidget.id_for_lable(). 2017-08-07 22:01:45 -04:00
Sergey Fedoseev aadd3aeb2b Avoided creating temporary lists for obtaining the first item. 2017-07-31 11:02:23 -04:00
Sergey Fedoseev 38988f289f Avoided creation of temporary sets. 2017-07-29 10:16:43 -04:00
Srinivas Reddy Thatiparthy b306c0c1a3 Fixed #28264 -- Made FilePathField sort files and directories when recursive=True. 2017-07-29 09:15:46 -04:00
Windson yang f32d24652b Fixed #28321 -- Prevented FormSet.full_clean() from adding errors from deleted forms. 2017-07-24 18:55:41 -04:00
Johannes Hoppe c19b56f633 Fixed #28377 -- Made combining form Media retain relative asset order.
Thanks Florian Apolloner, Mariusz Felisiak, and Tim Graham for reviews.
2017-07-20 11:06:30 -04:00
Roman Selivanov d4da39685b Fixed #28414 -- Fixed ClearableFileInput rendering as a subwidget of MultiWidget. 2017-07-19 14:28:06 -04:00
Srinivas Reddy Thatiparthy 5debbdfcc8 Fixed #28387 -- Fixed has_changed() for disabled form fields that subclass it. 2017-07-14 13:06:51 -04:00
Windsooon e19b9d6015 Merged nested if statements in BaseFormSet.is_valid(). 2017-07-12 14:13:03 -04:00
Jon Dufresne d7881d2020 Fixed #22229 -- Added primary key validation to BaseModelFormSet._construct_form(). 2017-07-11 14:33:21 -04:00
Jon Dufresne a1be12fe19 Fixed #28345 -- Applied limit_choices_to during ModelForm.__init__().
field_for_model() now has an additional keyword argument,
apply_limit_choices_to, allowing it to continue to be used to create
form fields dynamically after ModelForm.__init__() is called.

Thanks Tim Graham for the review.
2017-06-30 15:57:48 -07:00