Skip to main content

PEP-484 stubs for django-rest-framework

Project description

mypy logo

pep484 stubs for Django REST framework

test Checked with mypy Gitter StackOverflow

Mypy stubs for Django REST Framework. Supports Python 3.10 and up.

Installation

pip install djangorestframework-stubs[compatible-mypy]

To make mypy aware of the plugin, you need to add

[mypy]
plugins =
    mypy_drf_plugin.main

in your mypy.ini file.

FAQ

Model instance is inferred as Any instead of my Model class

When subclassing ModelSerializer, add a type argument to type-hint the related model class, for example:

class MyModelSerializer(serializers.ModelSerializer[MyModel]):
    class Meta:
        model = MyModel
        fields = ("id", "example")

Which means that methods where the model is being passed around will know the actual type of the model instead of being Any. The instance attribute on the above serializer will be MyModel | typing.Sequence[MyModel] | None.

To get help

We have Gitter here: https://gitter.im/mypy-django/Lobby If you think you have more generic typing issue, please refer to https://github.com/python/mypy and their Gitter.

Contributing

This project is open source and community driven. As such we encourage contributions big and small. You can contribute by doing any of the following:

  1. Contribute code (e.g. improve stubs, add plugin capabilities, write tests etc) - to do so please follow the contribution guide.
  2. Assist in code reviews and discussions in issues.
  3. Identify bugs and issues and report these

You can always also reach out in gitter to discuss your contributions!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djangorestframework_stubs-3.17.0.tar.gz (33.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

djangorestframework_stubs-3.17.0-py3-none-any.whl (57.6 kB view details)

Uploaded Python 3

File details

Details for the file djangorestframework_stubs-3.17.0.tar.gz.

File metadata

File hashes

Hashes for djangorestframework_stubs-3.17.0.tar.gz
Algorithm Hash digest
SHA256 74c0307cad304c03c15aee5955ec2fdeab0ac854b5bea569dc124892792e2b96
MD5 6b39817f17da839f293c1d04f796ce82
BLAKE2b-256 9da145e25dab89b3dfc5da7a138f7e82aca4e970269c53a3fceed1e94b31d390

See more details on using hashes here.

Provenance

The following attestation bundles were made for djangorestframework_stubs-3.17.0.tar.gz:

Publisher: release.yml on typeddjango/djangorestframework-stubs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file djangorestframework_stubs-3.17.0-py3-none-any.whl.

File metadata

File hashes

Hashes for djangorestframework_stubs-3.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 babe2703f0401507780848439f49f76222a178b4fc73a6dcb30d0952a0a6dbc6
MD5 2a41ad39b3f9817494a3aea97fff2de7
BLAKE2b-256 72ff6e27d4aea12f67d14e0c0ec41869307ae98ad3816858ddc2a56bc3f4e0b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for djangorestframework_stubs-3.17.0-py3-none-any.whl:

Publisher: release.yml on typeddjango/djangorestframework-stubs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page