From c7e2d1d9760e543810130b058f2866486e7d9f98 Mon Sep 17 00:00:00 2001 From: Dariusz Czech Date: Mon, 20 Mar 2017 22:21:07 +0100 Subject: [PATCH 1/2] Do not hint BigAutoField as integer (outside of range) --- rest_framework/schemas.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/rest_framework/schemas.py b/rest_framework/schemas.py index ecfe835a9..802942d04 100644 --- a/rest_framework/schemas.py +++ b/rest_framework/schemas.py @@ -1,6 +1,6 @@ -import re from collections import OrderedDict from importlib import import_module +import re from django.conf import settings from django.contrib.admindocs.views import simplify_regex @@ -23,6 +23,7 @@ from rest_framework.utils import formatting from rest_framework.utils.model_meta import _get_pk from rest_framework.views import APIView + header_regex = re.compile('^[a-zA-Z][0-9A-Za-z_]*:') @@ -541,7 +542,8 @@ class SchemaGenerator(object): elif model_field is not None and model_field.primary_key: description = get_pk_description(model, model_field) - if isinstance(model_field, models.AutoField): + # BigAutoField is outside of Integer range + if isinstance(model_field, models.AutoField) and not isinstance(model_field, models.BigAutoField): schema_cls = coreschema.Integer field = coreapi.Field( From 9074e3e478e00974d17013d7eabb41f7ee38c197 Mon Sep 17 00:00:00 2001 From: Dariusz Czech Date: Tue, 21 Mar 2017 08:40:59 +0100 Subject: [PATCH 2/2] restored original formatting --- rest_framework/schemas.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/rest_framework/schemas.py b/rest_framework/schemas.py index 802942d04..f89f347ac 100644 --- a/rest_framework/schemas.py +++ b/rest_framework/schemas.py @@ -1,6 +1,6 @@ +import re from collections import OrderedDict from importlib import import_module -import re from django.conf import settings from django.contrib.admindocs.views import simplify_regex @@ -23,7 +23,6 @@ from rest_framework.utils import formatting from rest_framework.utils.model_meta import _get_pk from rest_framework.views import APIView - header_regex = re.compile('^[a-zA-Z][0-9A-Za-z_]*:')