summaryrefslogtreecommitdiff
path: root/tests/model_fields/tests.py
AgeCommit message (Collapse)Author
2026-04-22Fixed #35870 -- Made blank choice label in forms more accessible.Annabelle Wiegart
Added new constant django.db.models.fields.BLANK_CHOICE_LABEL for an accessible and translatable blank choice label in forms. Deprecated django.db.models.fields.BLANK_CHOICE_DASH constant. Added the immediately deprecated transitional setting USE_BLANK_CHOICE_DASH. Co-Authored-By: Marijke Luttekes <mail@marijkeluttekes.dev>
2026-03-12Fixed #36727 -- Deprecated Field.get_placeholder in favor of ↵Simon Charette
get_placeholder_sql. The lack of ability of the get_placeholder call chain to return SQL and parameters separated so they can be mogrified by the backend at execution time forced implementations to dangerously interpolate potentially user controlled values. The get_placeholder_sql name was chosen due to its proximity to the previous method, but other options such as Field.as_sql were considered but ultimately rejected due to its different input signature compared to Expression.as_sql that might have lead to confusion. There is a lot of overlap between what Field.get_db_prep_value and get_placeholder_sql do but folding the latter in the former would require changing its return signature to return expression which is a way more invasive change than what is proposed here. Given we always call get_db_prep_value it might still be an avenue worth exploring in the future to offer a publicly documented interface to allow field to take an active part in the compilation chain. Thanks Jacob for the review.
2024-09-18Fixed #35766 -- Handled slices in BaseChoiceIterator.Sarah Boyce
2023-09-14Fixed #24561 -- Added support for callables on model fields' choices.Natalia
2023-08-30 Fixed #31262 -- Added support for mappings on model fields and ↵Nick Pope
ChoiceField's choices.
2023-08-22Added tests for model field's choices iterator/iterable values.Natalia
2023-03-21Fixed #34388 -- Allowed using choice enumeration types directly on model and ↵T. Franzel
form fields.
2022-04-14Relaxed some query ordering assertions in various tests.Mariusz Felisiak
It accounts for differences seen on MySQL with MyISAM storage engine.
2022-02-07Refs #33476 -- Reformatted code with Black.django-bot
2022-01-14Fixed #33441 -- Restored immutability of models.Field.__hash__().Adam Johnson
Regression in 502e75f9ed5476ffe8229109acf0c23999d4b533.
2021-01-14Refs #31369 -- Removed models.NullBooleanField per deprecation timeline.Mariusz Felisiak
2020-09-09Fixed #31750 -- Made models.Field equality compare models for inherited fields.Ryan Hiebert
2020-01-15Fixed #31124 -- Fixed setting of get_FOO_display() when overriding inherited ↵Carlton Gibson
choices. Regression in 2d38eb0ab9f78d68c083a5b78b1eca39027b279a
2019-11-04Fixed #30931 -- Restored ability to override Model.get_FIELD_display().Carlton Gibson
Thanks Sergey Fedoseev for the implementation idea. Regression in a68ea231012434b522ce45c513d84add516afa60.
2019-10-23Fixed #29919 -- Fixed RelatedOnlyFieldListFilter crash with reverse ↵Dan Moore
relationships.
2019-10-23Added tests for Field.get_choices()'s limit_choices_to argument.Dan Moore
2019-08-15Fixed #30449 -- Fixed RelatedFieldListFilter/RelatedOnlyFieldListFilter to ↵zeyneloz
respect model's Meta.ordering. Regression in 6d4e5feb79f7eabe8a0c7c4b87f25b1a7f87ca0b. Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2019-03-23Removed redundant model field choices tests.Matthias Kestenholz
2019-01-30Fixed #30076 -- Added Model.get_FOO_display() even if field's choices are empty.Joshua Cannon
2018-11-27Switched TestCase to SimpleTestCase where possible in Django's tests.Tim Graham
2018-11-14Fixed #29835 -- Made RelatedFieldListFilter respect ModelAdmin.ordering.Hasan Ramezani
2018-04-20Fixed #29247 -- Allowed blank model field choice to be defined in nested ↵orlnub123
choices.
2018-04-20Moved tests for model Field.get_choices().Tim Graham
2017-06-26Removed unnecessary empty parentheses in class definitions.Jon Dufresne
2017-06-14Fixed #27914 -- Added support for nested classes in ↵chillaranand
Field.deconstruct()/__repr__().
2017-05-11Fixed #28188 -- Fixed crash when pickling model fields.Tim Graham
Regression in d2a26c1a90e837777dabdf3d67ceec4d2a70fb86. Thanks Adam Alton for the report and test, and Adam Johnson for suggesting the fix.
2017-03-23Fixed #27969 -- Fixed models.Field.formfield() setting 'disabled' for fields ↵Kapil Garg
with choices.
2017-01-17Refs #26154 -- Removed deprecated CommaSeparatedIntegerField.Tim Graham
2016-12-14Fixed #27599 -- Fixed Field.__str__() crash for fields not attached to models.Morgan Aubert
2016-12-14Moved test_field_ordering to the model_fields package.Morgan Aubert
2016-06-16Fixed #26747 -- Used more specific assertions in the Django test suite.Jon Dufresne
2016-03-23Split model_fields tests into different files.Tim Graham
2016-02-29Fixed #26186 -- Documented how app relative relationships of abstract models ↵Simon Charette
behave. This partially reverts commit bc7d201bdbaeac14a49f51a9ef292d6312b4c45e. Thanks Tim for the review. Refs #25858.
2016-01-29Refs #26022 -- Used context manager version of assertRaises in tests.Hasan
2016-01-11Fixed #25858 -- Bound abstract model application relative relationships.Simon Charette
Thanks to Karl Hobley for the report and Markus, Shai, Aymeric for their input and Tim for the review.
2016-01-06Fixed #25746 -- Isolated inlined test models registration.Simon Charette
Thanks to Tim for the review.
2015-12-05Fixed #25547 -- Made Model.refresh_from_db() update FileField's instance.Attila Tovt
2015-11-24Fixed #25767 -- Fixed data truncation possibility with ↵George Marshall
Positive(Small)IntegerField on MySQL.
2015-09-22Fixed #24509 -- Added Expression support to SQLInsertCompilerAlex Hill
2015-09-18Fixed #24636 -- Added model field validation for decimal places and max digits.Iulia Chiriac
2015-08-31Fixed #25331 -- Removed trailing blank lines in docstrings.Maxime Lorant
2015-08-03Removed unused Field.get_flatchoices() method.Tim Graham
Unused since c2ba59fc1da5287d6286e2c2aca4083d5bafe056 (Django 1.0). Thanks Andy Baker for the report.
2015-07-27Fixed #21127 -- Started deprecation toward requiring on_delete for ↵Flavio Curella
ForeignKey/OneToOneField
2015-07-17Fixed #16501 -- Added an allow_unicode parameter to SlugField.Edward Henderson
Thanks Flavio Curella and Berker Peksag for the initial patch.
2015-06-15Fixed flake8 warnings on Python 3.Tim Graham
2015-06-04Fixed #24677 -- Made TextField.to_python() return a string.Rolo
This is consistent with CharField.
2015-06-02Fixed #9596 -- Added date transform for DateTimeField.Jon Dufresne
2015-05-20Refs #24652 -- Used SimpleTestCase where appropriate.Simon Charette
2015-04-28Fixed #24714 -- Used more specific assertions than assertEqual in tests.Alasdair Nicol
2015-04-15Fixed model_fields tests to use django TestCase.Jon Dufresne