1
0
mirror of https://github.com/django/django.git synced 2025-03-13 19:00:45 +00:00

1177 Commits

Author SHA1 Message Date
Simon Charette
ab148c02ce Fixed #33579 -- Specialized exception raised on forced update failures.
Raising DatabaseError directly made it harder than it should to
differentiate between IntegrityError when a forced update resulted in no
affected rows.

Introducing a specialized exception allows for callers to more easily
silence, log, or turn them update failures into user facing exceptions
(e.g. 404s).

Thanks Mariusz for the review.
2025-03-10 21:09:15 +01:00
samruddhiDharankar
9120a19c4e Fixed #36066 -- Documented that Q objects can be used directly in annotations. 2025-03-10 12:54:23 +01:00
Clifford Gama
ae2736ca3b Fixed #36128 -- Clarified auto-generated unique constraint on m2m through models. 2025-03-04 13:06:09 +01:00
Chris Muthig
4b977a5d72 Fixed #35444 -- Added generic support for Aggregate.order_by.
This moves the behaviors of `order_by` used in Postgres aggregates into
the `Aggregate` class. This allows for creating aggregate functions that
support this behavior across all database engines. This is shown by
moving the `StringAgg` class into the shared `aggregates` module and
adding support for all databases. The Postgres `StringAgg` class is now
a thin wrapper on the new shared `StringAgg` class.

Thank you Simon Charette for the review.
2025-03-03 11:37:00 +01:00
Adam Zapletal
43766c70bd Clarified admonition in GeneratedField docs. 2025-02-20 14:41:00 +01:00
Mariusz Felisiak
efb7f9ced2
Refs #36005 -- Used datetime.UTC alias instead of datetime.timezone.utc.
datetime.UTC was added in Python 3.11.
2025-02-18 08:35:36 +01:00
Luke Cousins
579a1c9996 Corrected wording in docs/ref/models/constraints.txt. 2025-02-14 15:19:12 +01:00
Clifford Gama
9cc3970eaa Fixed ambiguous pronoun reference in docs/ref/models/fields.txt. 2025-01-24 18:45:31 +01:00
Sarah Boyce
85750bd2f8 Refs #35234 -- Removed CheckConstraint.check per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
d5fec03dad Refs #35060 -- Removed passing positional arguments to Model.save()/asave() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
b5a6c93a18 Refs #34355 -- Removed support for positional arguments in BaseConstraint per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
810edfd742 Removed versionadded/changed annotations for 5.1.
This also removes remaining versionadded/changed annotations for older
versions.
2025-01-15 22:28:37 +01:00
Jacob Walls
f054045973 Refs #36070 -- Referred to pk as an attribute when a composite primary key is defined.
This is to avoid confusion that a field is often associated with having
a single associated database column.
2025-01-15 13:44:23 +01:00
Jacob Walls
d206d4c200 Fixed #36051 -- Declared arity on aggregate functions.
Follow-up to 4a66a69239c493c05b322815b18c605cd4c96e7c.
2025-01-14 16:47:07 +01:00
Simon Charette
e580926d74 Fixed #36075 -- Documented how to introspect composite primary keys.
Document _meta.pk_fields and interactions between Field.primary_key and
CompositePrimaryKey.

Thanks Mariusz for the review.
2025-01-14 16:20:17 +01:00
Jacob Walls
d66137b39b Fixed #36077 -- Corrected docs on pk value where Model.save() executes an UPDATE.
The empty string is no longer special-cased since
c2ba59fc1da5287d6286e2c2aca4083d5bafe056.
2025-01-13 11:18:02 +01:00
Jacob Walls
470e5545e5 Refs #36042 -- Raised ValueError when providing composite expressions to aggregates. 2025-01-07 11:42:06 +01:00
John Parton
40d5516385 Fixed #35718 -- Add JSONArray to django.db.models.functions.
Co-authored-by: Sarah Boyce <42296566+sarahboyce@users.noreply.github.com>
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2025-01-06 10:08:32 +01:00
Sage Abdullah
d7d711c68c Refs #35718, Refs #32179 -- Moved JSONObject to django.db.models.functions.json. 2024-12-16 12:06:01 +01:00
Bendeguz Csirmaz
978aae4334 Fixed #373 -- Added CompositePrimaryKey.
Thanks Lily Foote and Simon Charette for reviews and mentoring
this Google Summer of Code 2024 project.

Co-authored-by: Simon Charette <charette.s@gmail.com>
Co-authored-by: Lily Foote <code@lilyf.org>
2024-11-29 11:23:04 +01:00
Anthony Joseph
3a8f52fbc6 Fixed #35856 -- Added QuerySet.explain() support for MEMORY/SERIALIZE option on PostgreSQL 17+. 2024-10-30 15:54:48 +01:00
aruseni
d7f78eb5d6 Corrected note on importing fields in model field reference docs. 2024-10-29 16:24:54 +01:00
Clifford Gama
799c377818 Fixed typo in ref/models/fields.txt. 2024-10-29 11:17:37 +01:00
Yash
35ab2e0182 Fixed #35731 -- Extended db_default docs.
This added a missing db_default reference in docs/topics/db/models.txt,
and added a reference to the DatabaseDefault object.
2024-10-23 11:48:30 +02:00
Clifford Gama
65f3cfce59
Fixed #26322 -- Consolidated lazy relationships details in docs/ref/models/fields.txt.
Reorganized docs to list and explain the types of lazy relationships
that can be defined in related fields.

Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>
2024-10-17 11:39:40 -03:00
gabn88
e970bb7ca7 Fixed #35103 -- Used provided error code and message when fields is set without a condition on UniqueConstraint. 2024-10-10 09:20:37 +02:00
Clifford Gama
e1d226bc1c Fixed #35748 -- Documented that fields are excluded from a ModelForm when formfield() returns None.
Co-authored-by: Sarah Boyce <42296566+sarahboyce@users.noreply.github.com>
2024-09-19 15:19:08 +02:00
saJaeHyukc
fd92f24789 Fixed #34887 -- Added support for unlimited models.CharField on SQLite.
Signed-off-by: saJaeHyukc <wogur981208@gmail.com>
2024-09-16 13:31:06 +02:00
Csirmaz Bendegúz
5865ff5adc
Refs #373 -- Added Model._is_pk_set() abstraction to check if a Model's PK is set. 2024-09-09 17:46:50 -03:00
Adam Johnson
26a67943ac
Removed outdated note about lack of subquery support in MySQL. 2024-08-28 15:55:30 -03:00
Mariusz Felisiak
2b9f0b79bc Fixed typo in docs/ref/models/expressions.txt. 2024-08-28 09:08:16 -03:00
Mariusz Felisiak
fed11ba461 Fixed typo in docs/ref/models/expressions.txt. 2024-08-28 09:08:16 -03:00
Clifford Gama
ca1318988c Fixed #35671 -- Clarified string-based fields behavior when null=False. 2024-08-20 08:09:39 +02:00
Devin Cox
e03083917d Fixed #35586 -- Added support for set-returning database functions.
Aggregation optimization didn't account for not referenced set-returning annotations on Postgres.

Co-authored-by: Simon Charette <charette.s@gmail.com>
2024-08-12 15:35:19 +02:00
Mariusz Felisiak
304d256674
Used :pypi: role in docs where appropriate. 2024-08-05 10:35:50 -03:00
Simon Charette
65ad4ade74 Refs #28900 -- Made SELECT respect the order specified by values(*selected).
Previously the order was always extra_fields + model_fields + annotations with
respective local ordering inferred from the insertion order of *selected.

This commits introduces a new `Query.selected` propery that keeps tracks of the
global select order as specified by on values assignment. This is crucial
feature to allow the combination of queries mixing annotations and table
references.

It also allows the removal of the re-ordering shenanigans perform by
ValuesListIterable in order to re-map the tuples returned from the database
backend to the order specified by values_list() as they'll be in the right
order at query compilation time.

Refs #28553 as the initially reported issue that was only partially fixed
for annotations by d6b6e5d0fd4e6b6d0183b4cf6e4bd4f9afc7bf67.

Thanks Mariusz Felisiak and Sarah Boyce for review.
2024-07-03 16:36:25 +02:00
Mariusz Felisiak
0f694ce2eb
Made cosmetic edits to code snippets reformatted with blacken-docs. 2024-05-30 09:42:05 -03:00
Adam Zapletal
99273fd525 Fixed #24076 -- Added warnings on usage of dates with DateTimeField and datetimes with DateField. 2024-05-23 12:03:57 +02:00
Natalia
05cce083ad Removed versionadded/changed annotations for 5.0.
This also removes remaining versionadded/changed annotations for older
versions.
2024-05-22 15:44:07 -03:00
Mariusz Felisiak
f030236a86 Fixed #35275 -- Fixed Meta.constraints validation crash on UniqueConstraint with OpClass().
This also introduces Expression.constraint_validation_compatible that
allows specifying that expression should be ignored during a constraint
validation.
2024-05-14 10:34:30 +02:00
John Parton
914bf69171 Clarified when ImageField attributes are set. 2024-05-02 10:04:55 +02:00
Mariusz Felisiak
160c0ab13a Fixed rendering XOR section in docs. 2024-05-02 09:26:44 +02:00
Mohammad Kazemi
47c608202a
Extended docs for Q() objects mentioning the ~ (NOT) operator.
Co-authored-by: Sarah Boyce <42296566+sarahboyce@users.noreply.github.com>
2024-04-15 13:16:35 -03:00
Adam Zapletal
fd2514d17d
Added RowNumber() link in Rank() docs. 2024-03-21 05:52:07 +01:00
Mariusz Felisiak
9c17010358
Refs #34059, Refs #34060 -- Removed outdated warning about validation of JSONField constraints.
Known issues have been fixed in:
- 0d8fbe2ade29f1b7bd9e6ba7a0281f5478603a43,
- c991602ce5798385261381025c06698d7fd30dc5, and
- 26aae5614487f58ddb1df5726224393887373ecd.
2024-03-18 16:11:38 +01:00
Mariusz Felisiak
36a000858b
Refs #33996 -- Updated CheckConstraint validation on NULL values on Oracle 23c+.
Oracle 23c supports comparing boolean expressions.
2024-03-15 12:34:54 +01:00
Simon Charette
daf7d482db Refs #35234 -- Deprecated CheckConstraint.check in favor of .condition.
Once the deprecation period ends CheckConstraint.check() can become the
documented method that performs system checks for BaseConstraint
subclasses.
2024-03-01 07:15:32 +01:00
David Sanders
7714ccfeae Refs #34964 -- Doc'd that Q expression order is preserved. 2024-02-28 11:41:06 +01:00
Adam Johnson
7ba6c9edc5 Fixed #28011 -- Corrected Field.hidden docs. 2024-02-17 17:17:23 +01:00
jordanbae
4fec1d2ce3 Fixed #34949 -- Clarified when UniqueConstraints with include/nulls_distinct are not created. 2024-01-15 13:42:02 +01:00