Ian Foote
7414704e88
Fixed #470 -- Added support for database defaults on fields.
...
Special thanks to Hannes Ljungberg for finding multiple implementation
gaps.
Thanks also to Simon Charette, Adam Johnson, and Mariusz Felisiak for
reviews.
2023-05-12 19:11:40 +02:00
David Smith
097e3a70c1
Refs #33476 -- Applied Black's 2023 stable style.
...
Black 23.1.0 is released which, as the first release of the year,
introduces the 2023 stable style. This incorporates most of last year's
preview style.
https://github.com/psf/black/releases/tag/23.1.0
2023-02-01 11:04:38 +01:00
Gregor Gärtner
f0c06f8ab7
Refs #33990 -- Renamed TransactionTestCase.assertQuerysetEqual() to assertQuerySetEqual().
...
Co-Authored-By: Michael Howitz <mh@gocept.com>
2022-10-08 08:07:38 +02:00
David Wobrock
3b4a5b9f97
Fixed #23353 -- Used "raise from" when raising TransactionManagementError.
...
This change sets the __cause__ attribute to raised exceptions.
2022-10-03 06:08:54 +02:00
kshivakumar
46efd03d26
Fixed #33733 -- Preserved wrapper assignment for manager methods.
2022-06-01 10:44:34 +02:00
Mariusz Felisiak
0982cf2a01
Refs #33733 -- Added tests for attributes of manager methods.
2022-06-01 10:44:34 +02:00
Andrew Godwin
58b27e0dbb
Fixed #33646 -- Added async-compatible interface to QuerySet.
...
Thanks Simon Charette for reviews.
Co-authored-by: Carlton Gibson <carlton.gibson@noumenal.es>
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2022-04-26 20:25:23 +02:00
Nick Pope
847f46e9bf
Removed redundant QuerySet.all() calls in docs and tests.
...
Most QuerySet methods are mapped onto the Manager and, in general,
it isn't necessary to call .all() on the manager.
2022-02-22 10:29:38 +01:00
Mariusz Felisiak
7119f40c98
Refs #33476 -- Refactored code to strictly match 88 characters line length.
2022-02-07 20:37:05 +01:00
django-bot
9c19aff7c7
Refs #33476 -- Reformatted code with Black.
2022-02-07 20:37:05 +01:00
Adam Johnson
08d8bccbf1
Improved Model.__init__() properties loop.
...
This improves readability, accumulates unrecognized arguments raise an
exception with all of them, and avoids refetching the values.
2022-01-13 11:09:37 +01:00
Johan Schiff
d01709aae2
Fixed #24141 -- Added QuerySet.contains().
2021-03-06 20:40:29 +01:00
Jacob Walls
73b1b225ce
Fixed #22640 -- Raised TypeError when instantiating model with keyword and positional args for the same field.
2021-03-01 20:26:39 +01:00
Hasan Ramezani
3f7b327562
Fixed #31235 -- Made assertQuerysetEqual() compare querysets directly.
...
This also replaces assertQuerysetEqual() to
assertSequenceEqual()/assertCountEqual() where appropriate.
Co-authored-by: Peter Inglesby <peter.inglesby@gmail.com>
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2020-11-06 09:24:50 +01:00
Alexandr Tatarinov
f4ac167119
Fixed #27719 -- Added QuerySet.alias() to allow creating reusable aliases.
...
QuerySet.alias() allows creating reusable aliases for expressions that
don't need to be selected but are used for filtering, ordering, or as
a part of complex expressions.
Thanks Simon Charette for reviews.
2020-07-31 13:19:33 +02:00
Abhijeet Viswa
babd412685
Fixed #29129 -- Skipped UPDATE when adding a model instance with inherited primary key that has a default.
2020-03-05 12:08:38 +01:00
Nick Pope
335c9c94ac
Simplified imports from django.db and django.contrib.gis.db.
2020-02-04 13:20:06 +01:00
ElizabethU
54ea290e5b
Fixed #30651 -- Made __eq__() methods return NotImplemented for not implemented comparisons.
...
Changed __eq__ to return NotImplemented instead of False if compared to
an object of the same type, as is recommended by the Python data model
reference. Now these models can be compared to ANY (or other objects
with __eq__ overwritten) without returning False automatically.
2019-10-01 17:58:19 +02:00
Hasan Ramezani
85458e94e3
Fixed #29260 -- Skipped an UPDATE when adding a model instance with primary key that has a default.
2019-08-19 13:28:35 +02:00
Amir Hadi
330638b89f
Fixed #6785 -- Made QuerySet.get() fetch a limited number of rows.
...
Co-authored-by: Tim Graham <timograham@gmail.com>
Co-authored-by: Patryk Zawadzki <patrys@room-303.com>
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2019-05-12 07:05:24 +02:00
Carlton Gibson
607ff4efa3
Refs #30254 -- Added tests for Model.__hash__() inheritance.
2019-04-24 09:59:09 +02:00
Simon Charette
84e7a9f4a7
Switched setUp() to setUpTestData() where possible in Django's tests.
2018-11-27 09:35:17 -05:00
Hasan Ramezani
cf915cb513
Added a test for a lookup in Model.refresh_from_db(fields=[...]).
2018-11-15 11:38:47 -05:00
oliver
0ce2ad9ca4
Used QuerySet.bulk_create() in a couple tests.
2018-11-06 19:32:40 -05:00
Tom Forbes
9cbdb44014
Fixed #23646 -- Added QuerySet.bulk_update() to efficiently update many models.
2018-09-18 16:14:44 -04:00
Ming Qin
cfb4845f06
Fixed #29625 -- Made Model.refresh_from_db() clear prefetch related caches.
2018-08-20 12:01:42 -04:00
Federico Bond
4c36414323
Fixed #29517 -- Rephrased error message when passing incorrect kwarg to model constructor
2018-06-25 09:30:58 +02:00
Tom
c1c163b427
Fixed #28574 -- Added QuerySet.explain().
2018-04-19 10:52:19 -04:00
Jon Dufresne
136bf5c214
Fixed #29076 -- Made Model.refresh_from_db() clear cached relationships even if the related id doesn't change.
2018-01-30 10:43:53 -05:00
Paulo
a7b5ad8b19
Fixed #27846 -- Made Model.refresh_from_db() clear cached relations.
2017-10-12 17:04:10 -04:00
Tim Graham
a80903b711
Removed DatabaseFeatures.supports_microsecond_precision.
...
MySQL 5.5 (refs #28552 ) was the last database to use it.
2017-09-25 14:48:15 -04:00
Mads Jensen
a51c4de194
Used assertRaisesMessage() to test Django's error messages.
2017-07-29 19:07:23 -04:00
Jon Dufresne
21046e7773
Fixed #28249 -- Removed unnecessary dict.keys() calls.
...
iter(dict) is equivalent to iter(dict.keys()).
2017-05-27 19:08:46 -04: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
chillaranand
d6eaf7c018
Refs #23919 -- Replaced super(ClassName, self) with super().
2017-01-25 12:23:46 -05: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
Florian Apolloner
84c1826ded
Fixed #27718 -- Added QuerySet.union(), intersection(), difference().
...
Thanks Mariusz Felisiak for review and Oracle assistance.
Thanks Tim Graham for review and writing docs.
2017-01-14 08:32:07 -05:00
Morgan Aubert
adb791fdcb
Moved test_field_ordering to the model_fields package.
2016-12-14 13:35:13 -05:00
za
321e94fa41
Refs #27392 -- Removed "Tests that", "Ensures that", etc. from test docstrings.
2016-11-10 21:30:21 -05:00
Tim Graham
20d1cb33c2
Fixed #26787 -- Documented deleting and reloading of model instance fields.
...
Thanks Julien Hartmann for the report.
2016-06-21 14:39:17 -04:00
Jon Dufresne
4f336f6652
Fixed #26747 -- Used more specific assertions in the Django test suite.
2016-06-16 14:19:18 -04:00
Marti Raudsepp
b9ae662c97
Fixed #26620 -- Made Model.refresh_from_db() fail when passed unknown kwargs.
2016-05-18 09:27:23 -04:00
Loïc Bistuer
ed0ff913c6
Fixed #10506 , #13793 , #14891 , #25201 -- Introduced new APIs to specify models' default and base managers.
...
This deprecates use_for_related_fields.
Old API:
class CustomManager(models.Model):
use_for_related_fields = True
class Model(models.Model):
custom_manager = CustomManager()
New API:
class Model(models.Model):
custom_manager = CustomManager()
class Meta:
base_manager_name = 'custom_manager'
Refs #20932 , #25897 .
Thanks Carl Meyer for the guidance throughout this work.
Thanks Tim Graham for writing the docs.
2016-05-17 12:07:22 +07:00
Tim Graham
92053acbb9
Fixed E128 flake8 warnings in tests/.
2016-04-08 10:12:33 -04:00
Hasan
26ad01719d
Refs #26022 -- Replaced six.assertRaisesRegex with assertRaisesMessage as appropriate.
2016-01-29 13:37:33 -05:00
Hasan
3d0dcd7f5a
Refs #26022 -- Used context manager version of assertRaises in tests.
2016-01-29 12:32:18 -05:00
Anderson Resende
b5f8c81ce1
Fixed #26026 -- Fixed isinstance crash comparing EmptyQuerySet to non-QuerySet.
2016-01-07 10:57:05 -05:00
Tim Graham
54e2e688e1
Fixed #25715 -- Fixed Model.refresh_from_db() with ForeignKey w/on_delete=SET_NULL.
2015-11-21 10:34:01 -05:00
Tim Graham
96317ad8de
Refs #21414 -- Removed Field.related per deprecation timeline.
2015-09-23 19:31:10 -04:00