Danilo Bargen
2e65d56156
Fixed #20003 -- Improved and extended URLValidator
...
This adds support for authentication data (`user:password`) in URLs,
IPv6 addresses, and unicode domains.
The test suite has been improved by adding test URLs from
http://mathiasbynens.be/demo/url-regex (with a few adjustments,
like allowing local and reserved IPs).
The previous URL validation regex failed this test suite on 13
occasions, the validator was updated based on
https://gist.github.com/dperini/729294 .
2015-01-06 14:04:25 -05:00
Tim Graham
40a8504357
Fixed #23891 -- Moved deprecation of IPAddressField to system check framework.
...
Thanks Markus Holtermann for review.
2015-01-01 13:30:52 -05:00
Andrey Maslov
7a878ca5cb
Fixed #24008 -- Fixed ValidationError crash with list of dicts.
2014-12-31 14:43:13 -05:00
Tim Graham
8a9b0c15a6
Renamed tests for util -> utils moves; refs #17627 .
2014-12-31 11:26:27 -05:00
Claude Paroz
51890ce889
Applied ignore_warnings to Django tests
2014-12-30 18:16:25 +01:00
Marc Tamlyn
57554442fe
Fixed #2443 -- Added DurationField.
...
A field for storing periods of time - modeled in Python by timedelta. It
is stored in the native interval data type on PostgreSQL and as a bigint
of microseconds on other backends.
Also includes significant changes to the internals of time related maths
in expressions, including the removal of DateModifierNode.
Thanks to Tim and Josh in particular for reviews.
2014-12-20 18:28:29 +00:00
Grzegorz Slusarek
0dea81cd6d
Fixed #23674 -- Fixed a crash when a MultiValueField has invalid data.
2014-12-12 08:47:21 -05:00
Berker Peksag
560b4207b1
Removed redundant numbered parameters from str.format().
...
Since Python 2.7 and 3.1, "{0} {1}" is equivalent to "{} {}".
2014-12-03 14:27:38 -05:00
Tim Heap
5b17dcd8ef
Fixed #23883 -- Stopped flatatt modifying its argument
2014-11-21 09:45:08 +01:00
Aymeric Augustin
b69b4008d1
Removed usage of a global variable.
2014-11-19 21:35:40 +01:00
Peter Inglesby
74e1980cf9
Fixed #13181 -- Added support for callable choices to forms.ChoiceField
...
Thanks vanschelven and expleo for the initial patch.
2014-11-04 11:23:58 -05:00
Berker Peksag
f7969b0920
Fixed #23620 -- Used more specific assertions in the Django test suite.
2014-11-03 11:56:37 -05:00
Loic Bistuer
ec2fd02bb3
Fixed #23594 -- Fixed deepcopy on ErrorList.
...
Thanks Troy Grosfield for the report and Tim Graham for the tests.
2014-10-07 00:09:55 +07:00
Marc Tamlyn
ed7821231b
Fixed #19463 -- Added UUIDField
...
Uses native support in postgres, and char(32) on other backends.
2014-09-16 10:08:09 +01:00
Vlastimil Zíma
e622caaa85
Fixed #21201 -- Improved customization of ClearableFileInput.
2014-08-29 09:40:08 -04:00
Tim Graham
f9c7732e96
Tweaked docstrings from previous commit.
2014-08-22 15:57:15 -04:00
areski
a6691e5dcf
Fixed #23167 -- Added BaseForm.__repr__()
...
Thanks Keryn Knight for the idea.
2014-08-22 15:55:56 -04:00
Gabriel Muñumel
deed00c0d8
Fixed #23162 -- Renamed forms.Field._has_changed() to has_changed().
2014-08-15 08:14:45 -04:00
Tim Graham
6e77acc589
Fixed flake8 warning.
2014-08-03 14:21:45 -04:00
Tim Graham
0f2ceee025
Fixed #23151 -- Deprecated RegexField.error_message.
...
Thanks Baptiste Mispelon for the suggestion.
2014-08-03 11:21:01 -04:00
Petras Zdanavičius
8b7347220f
Fixed #23103 -- Annotated ImageField file with image and content_type attributes.
...
Thanks Jeremy Dunck for the suggestion and Nick Sanford for review.
2014-08-01 09:30:58 -04:00
Kit La Touche
17e75d03f9
Fixed #23129 -- Added 'true' and 'false' to `NullBooleanField`.
...
JavaScript serializations of forms will sometimes render the boolean
values as the strings 'true' and 'false', in lower case. Rather than
repeat boilerplate in the JavaScript to circumvent this, it seems
reasonable to allow Django to understand the lower-case versions of the
booleans.
2014-07-29 19:55:55 -04:00
Simon Charette
80708ac772
Fixed #23113 -- ChoiceInput.render should take specified attrs into account.
...
Thanks to Tim Graham for the review.
2014-07-28 10:01:07 -04:00
Anubhav Joshi
5cdb8f8c1e
Fixed #16617 -- Added 'value' to BaseValidator params.
...
Also allowed overriding the default messages in subclasses of BaseValidator.
Thanks sperrygrove for initial patch.
2014-07-26 10:03:00 -04:00
Anubhav Joshi
011abb7d96
Fixed #19671 -- Added warnings that null and validators are ignored for ManyToManyField.
...
Thanks Loic Bistuer and Tim Graham for help and review.
2014-07-09 16:01:09 -04:00
Claude Paroz
dd9a23d5cf
Fixed #22950 -- Eased markup customization for choice field rendering
...
Thanks Patrick Robertson for the report.
2014-07-05 13:36:49 +02:00
Claude Paroz
9209049211
Ensured bound field renders as unicode safe data
...
Refs #22950 .
2014-07-05 11:42:27 +02:00
Loic Bistuer
1966054feb
Fixed #22915 -- Document backward incompatible changes in the ValidationError constructor.
...
This patch also fixes update_error_dict to better handle the use case described
in this ticket, previously the type of the provided container could be lost in
some conditions.
Thanks Russell Keith-Magee for the report and Tim Graham for review.
2014-07-04 17:05:31 +07:00
gyx1000
7e2c87809c
Fixed #22684 -- Amended SelectDateWidget.empty_label to accept a tuple of values.
...
Thanks danielsamuels for the report
2014-06-04 07:23:25 -04:00
Nick Presta
11f0899bbe
Fixed #11776 -- Added CSS class for non-field/top of form errors.
...
Thanks Daniel Pope for the suggestion.
2014-06-02 15:22:15 -04:00
Alex Gaynor
1dcc603eff
Fixed several typos in Django
2014-05-28 17:39:14 -07:00
Guillaume Pannatier
32586b0ba4
Fixed #22684 -- Added `empty_label` option on `django.forms.extras.widets.SelectDateWidget`
...
Thanks danielsamuels for the report
2014-05-28 13:23:28 -04:00
Florian Apolloner
ee51ab9d23
Restored Python 2 compatibility.
2014-05-26 00:07:15 +02:00
Florian Apolloner
536ebaa048
Fixed a few warnings in the testsuite.
2014-05-25 23:14:50 +02:00
Stephen Burrows
d64f192df1
Fixed #22628 -- Took initial forms into account when combining FormSet.min_num and FormSet.extra.
...
Forwardport of 79f15ab1ef
from stable/1.7.x
2014-05-16 06:38:24 -04:00
Julen Ruiz Aizpuru
5eb81ce445
Fixed #22533 -- Added label_suffix parameter to form fields.
...
Fields can now receive the `label_suffix` attribute, which will override
a form's `label_suffix`.
This enhances the possibility to customize form's `label_suffix`, allowing
to use such customizations while using shortcuts such as
`{{ form.as_p }}`.
Note that the field's own customization can be overridden at runtime by
using the `label_prefix` parameter to `BoundField.label_tag()`.
Refs #18134 .
2014-05-13 09:09:33 -04:00
Stephen Burrows
a5de0df58b
Fixed #22502 -- Fixed microseconds/default/form interaction
...
Made explicit lack of microsecond handling by built-in datetime form
fields. Used that explicitness to appropriately nix microsecond
values in bound fields. Thanks Claude Paroz for the review.
2014-05-10 10:56:39 +02:00
Ben Davis
df60db0e78
Fixed #22570 -- Made Form.__getitem__ KeyError more descriptive.
2014-05-05 20:01:15 -04:00
chriscauley
66ec9ee441
Fixed #22378 -- Updated \d to [0-9]+ in urlpatterns of docs and tests.
...
Thanks tomwys for the suggestion.
2014-04-16 20:36:29 -04:00
Aymeric Augustin
2791fbf59d
Used more specific test assertions.
2014-04-09 22:20:22 +02:00
Anubhav Joshi
cd914e31c9
Fixed #21977 -- Deprecated SimpleTestCase.urls
2014-04-06 17:33:43 -04:00
Tim Graham
d73d0e071c
Fixed #22218 -- Deprecated django.conf.urls.patterns.
...
Thanks Carl Meyer for the suggestion and Alex Gaynor and Carl for reviews.
2014-04-03 07:28:10 -04:00
Alex Gaynor
778ce245dd
Corrected many style guide violations that the newest version of flake8 catches
2014-03-30 12:11:05 -07:00
Claude Paroz
d320863878
Fixed #22114 -- Stopped adding trailing slashes in URLField.to_python
...
Thanks coredumperror at gmail.com for the report and Tim Graham
for the review.
2014-03-26 18:10:58 +01:00
Anubhav Joshi
416a858023
Fixed #17922 -- Added required_css_class to form label.
...
Thanks hanson2010 for the suggestion.
2014-03-24 08:11:54 -04:00
Loic Bistuer
7ac8380799
Fixed #22318 -- Added Form.has_error() to easily check if a given error has happened.
2014-03-24 07:21:32 -04:00
Loic Bistuer
e61d99d96d
Fixed #20684 -- Added support for HTML5 boolean attributes to form widgets.
2014-03-22 14:28:12 -04:00
Tim Graham
e80de93af6
Removed hard-coded help_text for ManyToManyFields that use a SelectMultiple widget
...
Per deprecation timeline; refs #9321 .
2014-03-21 19:10:07 -04:00
Tim Graham
35f46ec7a9
Fixed flake8 warnings.
2014-03-21 06:24:45 -04:00
Dejan Noveski
4d0c5f6142
Fixed #22255 -- Added support for specifying re flags in RegexValidator
2014-03-21 11:12:36 +01:00
Claude Paroz
5a976b4bec
Fixed #22245 -- Avoided widget overwrite in forms.IntegerField subclasses
...
Thanks Jeroen Pulles for the report and Simon Charette for the review.
2014-03-13 16:58:14 +01:00
Claude Paroz
210d0489c5
Fixed #21188 -- Introduced subclasses for to-be-removed-in-django-XX warnings
...
Thanks Anssi Kääriäinen for the idea and Simon Charette for the
review.
2014-03-08 09:57:40 +01:00
Chris Wilson
95c74b9d69
Fixed #22206 -- Passed models.TextField.max_length to forms.CharField.maxlength
2014-03-05 20:09:28 +01:00
Rodolfo Carvalho
0d91225892
Fixed many typos in comments and docstrings.
...
Thanks Piotr Kasprzyk for help with the patch.
2014-03-03 07:38:09 -05:00
vvojvoda
c23b3717be
Fixed #21962 -- Added escape_html flag to ErrorDict.as_json()
2014-02-28 07:05:55 -05:00
Claude Paroz
cb844497d0
Fixed #22097 -- Fixed change detection for TypedChoiceField
...
Thanks Igor Mitrenko for the report.
2014-02-20 13:40:42 +01:00
Aymeric Augustin
b951a7fbc1
Removed superfluous uses of TransRealMixin.
...
The translation.override context manager cleans up after itself. As a
consequence this mixin isn't needed any more in many cases.
2014-01-27 22:01:22 +01:00
Claude Paroz
0179852d7f
Fixed #8898 -- Obsoleted SplitDateTimeWidget usage with DateTimeField
...
Thanks Tim Graham for the review.
2014-01-11 15:50:34 +01:00
Claude Paroz
18374c1d8c
Fixed #21752 -- Prevented custom widget step attribute to be overwritten
...
Thanks orcein at gmail.com for the report.
2014-01-11 14:08:04 +01:00
Aymeric Augustin
f5f7617167
Renamed a couple models to prevent duplicate names.
2014-01-05 20:52:46 +01:00
Aymeric Augustin
e32095616c
Imported override_settings from its new location.
2013-12-23 21:37:56 +01:00
Loic Bistuer
2fd7fc134c
Refs #17413 -- Added isinstance backward compatibility on ErrorList.
2013-12-18 08:59:53 -05:00
Loic Bistuer
3ce9829b61
Fixed #17413 -- Serialization of form errors along with all metadata.
2013-12-16 16:33:28 -05:00
Loic Bistuer
f563c339ca
Fixed #20867 -- Added the Form.add_error() method.
...
Refs #20199 #16986 .
Thanks @akaariai, @bmispelon, @mjtamlyn, @timgraham for the reviews.
2013-11-30 01:00:53 +07:00
Claude Paroz
a0f3eeccf3
Fixed #21397 -- Re-added flexibility to TypedChoiceField coercion
...
Thanks Elec for the report and Simon Charette for the review.
2013-11-18 18:24:56 +01:00
Claude Paroz
bc21e9c0d9
Fixed #13970 -- Made SelectDateWidget use the standard widget is_required attribute
...
Thanks mitar for the report and Tim Graham for the review.
2013-11-08 16:58:17 +01:00
Alex Gaynor
f67e18f39e
Fixed all E251 violations
2013-11-03 10:17:58 -08:00
Alex Gaynor
c347f78cc1
Fixed all E226 violations
2013-11-03 10:08:55 -08:00
Jason Myers
7a61c68c50
PEP8 cleanup
...
Signed-off-by: Jason Myers <jason@jasonamyers.com>
2013-11-02 23:50:49 -05:00
coagulant
8eec2d93b6
Fixed all E261 warnings
2013-11-02 23:50:33 -05:00
Tim Graham
36ded01527
Fixed #21302 -- Fixed unused imports and import *.
2013-11-02 15:24:56 -04:00
Alex Gaynor
b35ff0d920
Fixed all the E203 violations
2013-10-26 18:27:42 -07:00
Alex Gaynor
9d740eb8b1
Fix all violators of E231
2013-10-26 12:15:03 -07:00
Alasdair Nicol
c3aa2948c6
Fixed #21298 -- Fixed E301 pep8 warnings
2013-10-23 13:45:03 +01:00
Tim Graham
ae48d77ef8
Fixed E225 pep8 warnings.
2013-10-23 06:09:29 -04:00
Ramiro Morales
51d2e1fb23
Fixed #21307 -- Moved TransRealMixin to django.test.utils.
2013-10-22 22:19:56 -03:00
Tim Graham
8e2029f8dd
Removed import * in tests.
...
Thanks to flake8 path/to/file.py | awk -F ' ' '{ print $5 }' | sort | uniq
2013-10-22 08:32:01 -04:00
Alasdair Nicol
b289fcf1bf
Fixed #21288 -- Fixed E126 pep8 warnings
2013-10-21 08:31:30 -04:00
Tim Graham
96d1d4e292
Removed unused local variables in tests.
2013-10-19 08:31:38 -04:00
Alasdair Nicol
a800036981
Fixed #21287 -- Fixed E123 pep8 warnings
2013-10-18 10:07:39 +01:00
Alasdair Nicol
bab9123daa
Fixed #21268 -- Fixed E303 pep8 warnings
2013-10-18 01:46:24 +01:00
Alasdair Nicol
dfb4cb9970
Fixed #21285 -- Fixed E121,E122 pep8 warnings
2013-10-17 20:20:11 -04:00
Bouke Haarsma
2fb5a51fa3
Fixed #18659 -- Deprecated request.REQUEST and MergeDict
...
Thanks Aymeric Augustin for the suggestion.
2013-10-17 09:42:28 -04:00
Alasdair Nicol
eb214452c3
Fixed #21270 -- Fixed E701 pep8 warnings
2013-10-17 12:12:40 +01:00
Marc Tamlyn
ce823d3710
Merge pull request #1382 from loic/ticket19617
...
Fixed #19617 -- Refactored form metaclasses to support more inheritance scenarios.
2013-10-15 04:22:34 -07:00
Larry O'Neill
83b9bfea44
Fixed #21266 -- Fixed E201,E202 pep8 warnings.
2013-10-14 18:12:00 -04:00
Loic Bistuer
ac5ec7b8bc
Fixed #19617 -- Refactored Form metaclasses to support more inheritance scenarios.
...
Thanks apollo13, funkybob and mjtamlyn for the reviews.
2013-10-14 21:59:30 +07:00
Claude Paroz
00a73c1c69
Fixed #21173 -- Stopped fixing format for date-based widgets at init time
...
Thanks Marc Tamlyn for the review.
2013-10-12 18:31:19 +02:00
Tim Graham
b67ab75e82
Fixed assorted flake8 errors.
2013-10-11 07:25:14 -04:00
Tim Graham
adedc31072
Fixed "redefinition of unused 'foo' from line X" pyflakes warnings.
2013-10-10 11:09:42 -04:00
Tim Graham
ff9e8eccf8
Removed unnecessary semicolons.
2013-10-10 08:50:32 -04:00
Christopher Babiak
a834bc84d8
Fixed #20931 -- Fixed select widgets nested choice rendering
...
ChoiceFieldRenderer was not rendering nested choices. Added recursion
to ChoiceFieldRenderer to take nested choices and render them as
<ul>'s.
2013-09-28 17:25:32 -07:00
Erik Romijn
1a63092981
Fixed #20439 -- Started deprecation of IPAddressField
2013-09-28 10:55:32 +02:00
yokomizor
df27803a55
Fixed #9532 -- Added min_num and validate_min on formsets.
...
Thanks gsf for the suggestion.
2013-09-19 13:11:49 -04:00
Tim Graham
1234225068
Fixed test failures introduced in previous commit.
2013-09-16 13:12:50 -04:00
Tim Graham
18ffdb1772
Fixed #17627 -- Renamed util.py files to utils.py
...
Thanks PaulM for the suggestion and Luke Granger-Brown and
Wiktor Kołodziej for the initial patch.
2013-09-16 12:52:05 -04:00
Tim Graham
4e96dac450
Fixed #19298 -- Added MultiValueField.__deepcopy__
...
Thanks nick.phillips at otago.ac.nz for the report.
2013-09-10 13:56:49 -04:00
Florian Apolloner
d5d0e03ec8
Fixed test errors from 053de6131a
on py3.2.
2013-09-10 19:17:01 +02:00
e0ne
053de6131a
Fixed #5749 -- Added field_name as a key in the _html_output dict
...
Thanks SmileyChris for the suggestion.
2013-09-10 13:00:10 -04:00
Florian Apolloner
df2fd4e09b
Removed unneeded imports in tests's __init__.py and unified them.
2013-09-09 23:01:07 +02:00
Daniel Langer
cc957cb16c
Fixed #4287 -- Fixed NaN and +/- Infinity handling in FloatField
...
NaN, +Inf, and -Inf are no longer valid values for FloatFields.
2013-09-06 14:56:37 -04:00
Tim Graham
5649c0af9d
Fixed "indentation is not a multiple of four" pep8 issues.
2013-09-03 14:22:21 -04:00
Simon Charette
11cd7388f7
Fixed #20989 -- Removed useless explicit list comprehensions.
2013-08-30 10:57:51 -04:00
Loic Bistuer
da800be6dd
Fixed #20986 -- Enabled SelectDateWidget to use custom months
...
Reviewed by Trac alias MarkusH.
2013-08-28 16:39:26 +03:00
Claude Paroz
165f44aaaa
Combine consecutive with statements
...
Python 2.7 allows to combine several 'with' instructions.
2013-08-16 20:12:10 +02:00
Matt Johnson
907ef9d0d1
Fixed #20555 -- Make subwidget id attribute available
...
In `BoundField.__iter__`, the widget's id attribute is now passed to
each subwidget. A new id_for_label property was added to ChoiceInput.
2013-08-13 13:23:05 -04:00
Marc Tamlyn
1c4a9bd9ad
Revert change to the default Form.clean()
...
This means it doesn't break for people who are doing
`cleaned_data = super(FooForm, self).clean()`.
2013-08-08 14:27:48 +01:00
Marc Tamlyn
fb1dd6b13a
Form.clean() does not need to return cleaned_data.
...
If it does, that will be used as the cleaned_data. The default
implementation has been changed to match this change.
2013-08-08 14:05:55 +01:00
Tai Lee
1280675834
Fixed #15511 -- Allow optional fields on ``MultiValueField` subclasses.
...
The `MultiValueField` class gets a new ``require_all_fields`` argument that
defaults to ``True``. If set to ``False``, individual fields can be made
optional, and a new ``incomplete`` validation error will be raised if any
required fields have empty values.
The ``incomplete`` error message can be defined on a `MultiValueField`
subclass or on each individual field. Skip duplicate errors.
2013-08-06 08:50:47 -04:00
Tim Heap
75c87e2d38
Fixed #20850 -- Added MultiWidget.needs_multipart_form
2013-08-05 10:02:28 -04:00
Alex Couper
1123f45511
Fixed #20649 -- Allowed blank field display to be defined in the initial list of choices.
2013-07-31 14:12:03 -04:00
Claude Paroz
5c1143910e
Removed most of absolute_import imports
...
Should be unneeded with Python 2.7 and up.
Added some unicode_literals along the way.
2013-07-29 20:28:13 +02:00
Julien Phalip
47c755327b
Fixed a number of minor misspellings.
2013-07-27 18:46:03 -07:00
Tim Graham
8676318d2d
Fixed #20805 -- Removed an extra colon beside checkboxes in the admin.
...
Thanks CollinAnderson for the report.
2013-07-26 14:45:38 -04:00
Claude Paroz
02b0106d43
Fixed #20781 -- Fixed _has_changed regression with MultiValueField
...
Thanks Tim Graham for the report.
2013-07-22 09:06:07 +02:00
Simon Charette
415a36947c
Fixed #20765 -- Set small values of `step` using exponential notation.
...
Browsers parse small factors of 10 as 0 under decimal notation.
Thanks to Trac alias matklad for the report and Claude Paroz for the review.
2013-07-19 23:31:15 -04:00
Tim Graham
9b471a8fe3
Fixed a deprecation warning in a selenium test.
2013-07-13 13:15:28 -04:00
Aymeric Augustin
cfcf4b3605
Stopped using django.utils.unittest in the test suite.
...
Refs #20680 .
2013-07-01 14:29:33 +02:00
Claude Paroz
ef79582e86
Fixed 17478 -- Allowed queryset overriding in BaseModelFormSet init
...
BaseModelFormSet.forms is now a cached property instead of being
populated in the __init__ method. This behaviour also matches an
example in the documentation.
Thanks Thomasz Swiderski for the report and Simon Charette for the
review.
2013-06-22 09:29:37 +02:00
Simon Charette
04628e2016
Fixed #20630 -- Removed `maxlength` attribute from `NumberInput`.
...
This attribute is only allowed on inputs of type "text", "search", "url",
"tel", "email", or "password".
Thanks to yoyoma for the report and @bmispelon for the review.
2013-06-20 10:59:41 -04:00
Baptiste Mispelon
3128f3d38d
Fixed #20618 -- Fixed regression in `BoundField.label_tag`.
2013-06-18 17:49:53 +02:00
Baptiste Mispelon
1b7634a0d0
Fixed #20464 -- Added a `total_error_count` method on formsets.
...
Thanks to frog32 for the report and to Tim Graham for the review.
2013-06-16 15:49:30 -04:00
Marc Tamlyn
46789e76c6
Fixed #20548 -- Removed all PendingDeprecationWarnings from django test suite
2013-06-14 15:37:39 +01:00
Gabe Jackson
584bd14dcf
Fixed #18134 -- BoundField.label_tag now includes the form's label_suffix
...
There was an inconsistency between how the label_tag for forms were
generated depending on which method was used: as_p, as_ul and as_table
contained code to append the label_suffix where as label_tag called on a
form field directly did NOT append the label_suffix. The code for
appending the label_suffix has been moved in to the label_tag code of
the field and the HTML generation code for as_p, as_ul and as_table now
calls this code as well.
This is a backwards incompatible change because users who have added the
label_suffix manually in their templates may now get double label_suffix
characters in their forms.
2013-06-10 14:23:15 -04:00
Aymeric Augustin
dfcce4288a
Fixed available_apps for selenium tests.
...
Refs #20483 .
2013-06-10 12:11:46 +02:00
Stephen Burrows
e2518fdf46
Fixed #12337 - Honor ModelForm.Meta.exclude when saving ManyToManyFields.
...
Thanks margieroginski for the report.
2013-06-06 10:01:48 -04:00
Claude Paroz
b67f2ac8e6
Fixed #20502 (again) -- More i18n cache flush in tests
...
Thanks Timo Graham for noticing the failures.
2013-06-06 14:28:58 +02:00
Ramiro Morales
0fa8d43e74
Replaced `and...or...` constructs with PEP 308 conditional expressions.
2013-05-26 23:47:50 -03:00
Claude Paroz
be0bab1bb8
Fixed #11725 -- Made possible to create widget label tag without "for"
...
Thanks Denis Martinez for the report and initial patch, and
Sergey Kolosov for bringing the patch up to date.
2013-05-25 15:31:07 +02:00
Jeroen Dekkers
d0788c2770
Fixed #18709 -- Check if initial_value is a callable
...
In _get_changed_data, check if initial_value is a callable and call it
if it is.
2013-05-22 01:05:22 +02:00
Marc Tamlyn
09f8652765
Use assertIsInstance in tests.
...
Gives much nicer errors when it fails.
2013-05-21 10:42:15 +01:00
Ryan Kaskel
4280217f31
Fixed #20403 -- Ignore forms marked for deletion when validating max_num.
2013-05-20 12:13:21 -04:00
Andrew Godwin
04e0fc029f
Merge pull request #1094 from senko/ticket_11160
...
Fixed #11160 : Formset non_form_errors returns ErrorList() if is_valid is not called
2013-05-19 03:56:14 -07:00
Tome Cvitan
caf56ad174
Fixed #20440 -- Ensured CharField's max_length/min_length are integers
2013-05-18 22:30:24 +02:00
Deni Bertovic
186ec21a3d
Added stripping of whitespace for SlugField and URLField
2013-05-18 16:06:08 +02:00
Senko Rasic
493aca453a
Fixed #11160 - Ensure full_clean is called from non_form_errors
...
Updated FormSet.non_form_errors() to ensure full_clean() has
been called before returning the errors.
2013-05-18 13:44:27 +02:00
Luke Plant
f026a519ae
Fixed #19733 - deprecated ModelForms without 'fields' or 'exclude', and added '__all__' shortcut
...
This also updates all dependent functionality, including modelform_factory
and modelformset_factory, and the generic views `ModelFormMixin`,
`CreateView` and `UpdateView` which gain a new `fields` attribute.
2013-05-09 16:44:36 +01:00
Carl Meyer
a98465c040
Refs #14567 -- Fixed failing test that wasn't being run.
2013-04-16 13:34:06 -06:00
Claude Paroz
be9ae693c4
Fixed #17840 -- Generalized named placeholders in form error messages
...
Also fixed plural messages for DecimalField.
2013-04-13 18:55:50 +02:00
Baptiste Mispelon
9ac4dbd7b5
Fixed #4592 : Made CheckboxSelectMultiple more like RadioSelect
...
I refactored RadioSelect and CheckboxSelectMultiple to
make them inherit from a base class, allowing them to share
the behavior of being able to iterate over their subwidgets.
Thanks to Matt McClanahan for the initial patch and to
Claude Paroz for the review.
2013-04-13 16:37:27 +02:00
Baptiste Mispelon
c4186c2fec
Fixed #4117 : Apply id attribute to the outer <ul> of RadioSelect
2013-04-13 12:23:25 +02:00
Baptiste Mispelon
844fbc85c1
Fixed #19874 : Apply id attribute to the outer <ul> of CheckboxSelectMultiple
2013-04-13 11:09:47 +02:00
Preston Timmons
cdf520ee86
Modified forms_tests to work with unittest2 discovery.
2013-04-12 15:00:17 -06:00
Baptiste Mispelon
ab686022f8
Fixed #20211 : Document backwards-incompatible change in BoundField.label_tag
...
Also cleaned up label escaping and consolidated the test suite regarding
label_tag.
2013-04-12 10:17:17 +02:00
Preston Timmons
8ce46375ae
Move last remaining tests out of models.py files; prep for test discovery.
2013-04-02 19:00:55 -06:00
Claude Paroz
066bf42675
Removed forced typecasting of help_text/label Field arguments
...
In any case, setting those variables to non-ascii utf-8 bytestrings
is now considered a programming error.
2013-03-25 21:38:21 +01:00
Andrew Gorcester
f9ab543720
Fixed #20084 -- Provided option to validate formset max_num on server.
...
This is provided as a new "validate_max" formset_factory option defaulting to
False, since the non-validating behavior of max_num is longstanding, and there
is certainly code relying on it. (In fact, even the Django admin relies on it
for the case where there are more existing inlines than the given max_num). It
may be that at some point we want to deprecate validate_max=False and
eventually remove the option, but this commit takes no steps in that direction.
This also fixes the DoS-prevention absolute_max enforcement so that it causes a
form validation error rather than an IndexError, and ensures that absolute_max
is always 1000 more than max_num, to prevent surprising changes in behavior
with max_num close to absolute_max.
Lastly, this commit fixes the previous inconsistency between a regular formset
and a model formset in the precedence of max_num and initial data. Previously
in a regular formset, if the provided initial data was longer than max_num, it
was truncated; in a model formset, all initial forms would be displayed
regardless of max_num. Now regular formsets are the same as model formsets; all
initial forms are displayed, even if more than max_num. (But if validate_max is
True, submitting these forms will result in a "too many forms" validation
error!) This combination of behaviors was chosen to keep the max_num validation
simple and consistent, and avoid silent data loss due to truncation of initial
data.
Thanks to Preston for discussion of the design choices.
2013-03-21 01:27:24 -07:00
Carny Cheng
aaec4f2bd8
Fixed #18839 - Field.__init__() now calls super().
2013-03-20 16:20:57 -07:00
Claude Paroz
2f121dfe63
Fixed #17051 -- Removed some 'invalid' field error messages
...
When the 'invalid' error message is set at field level, it masks
the error message raised by the validator, if any.
2013-03-14 17:03:43 +01:00
Claude Paroz
9883551d50
Fixed #20039 -- Fixed has_changed form detection for required TypedChoiceFields
...
Thanks Florian Apolloner for the report and the review.
Also fixes #19643 .
2013-03-14 14:49:07 +01:00