mirror of
https://github.com/django/django.git
synced 2025-08-03 18:38:50 +00:00
Fixed #31007 -- Allowed specifying type of auto-created primary keys.
This also changes the default type of auto-created primary keys for new apps and projects to BigAutoField.
This commit is contained in:
parent
b960e4ed72
commit
b5e12d490a
28 changed files with 415 additions and 11 deletions
|
@ -415,9 +415,12 @@ cross-site scripting attack.
|
|||
If ``True``, this field is the primary key for the model.
|
||||
|
||||
If you don't specify ``primary_key=True`` for any field in your model, Django
|
||||
will automatically add an :class:`AutoField` to hold the primary key, so you
|
||||
don't need to set ``primary_key=True`` on any of your fields unless you want to
|
||||
override the default primary-key behavior. For more, see
|
||||
will automatically add a field to hold the primary key, so you don't need to
|
||||
set ``primary_key=True`` on any of your fields unless you want to override the
|
||||
default primary-key behavior. The type of auto-created primary key fields can
|
||||
be specified per app in :attr:`AppConfig.default_auto_field
|
||||
<django.apps.AppConfig.default_auto_field>` or globally in the
|
||||
:setting:`DEFAULT_AUTO_FIELD` setting. For more, see
|
||||
:ref:`automatic-primary-key-fields`.
|
||||
|
||||
``primary_key=True`` implies :attr:`null=False <Field.null>` and
|
||||
|
@ -428,6 +431,11 @@ The primary key field is read-only. If you change the value of the primary
|
|||
key on an existing object and then save it, a new object will be created
|
||||
alongside the old one.
|
||||
|
||||
.. versionchanged:: 3.2
|
||||
|
||||
In older versions, auto-created primary key fields were always
|
||||
:class:`AutoField`\s.
|
||||
|
||||
``unique``
|
||||
----------
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue