mirror of
https://github.com/graphql-python/graphene-django.git
synced 2025-04-25 03:13:47 +03:00
Add option for including foreignkey IDs
This commit is contained in:
parent
d7c160c3b0
commit
a33050a543
|
@ -1,12 +1,13 @@
|
||||||
from collections import OrderedDict
|
from collections import OrderedDict
|
||||||
|
|
||||||
|
from django.db.models import ForeignKey
|
||||||
from django.utils.functional import SimpleLazyObject
|
from django.utils.functional import SimpleLazyObject
|
||||||
from graphene import Field
|
from graphene import Field
|
||||||
from graphene.relay import Connection, Node
|
from graphene.relay import Connection, Node
|
||||||
from graphene.types.objecttype import ObjectType, ObjectTypeOptions
|
from graphene.types.objecttype import ObjectType, ObjectTypeOptions
|
||||||
from graphene.types.utils import yank_fields_from_attrs
|
from graphene.types.utils import yank_fields_from_attrs
|
||||||
|
|
||||||
from .converter import convert_django_field_with_choices
|
from .converter import convert_django_field_with_choices, convert_field_to_id
|
||||||
from .registry import Registry, get_global_registry
|
from .registry import Registry, get_global_registry
|
||||||
from .utils import (DJANGO_FILTER_INSTALLED, get_model_fields,
|
from .utils import (DJANGO_FILTER_INSTALLED, get_model_fields,
|
||||||
is_valid_django_model)
|
is_valid_django_model)
|
||||||
|
@ -30,6 +31,15 @@ def construct_fields(model, registry, only_fields, exclude_fields):
|
||||||
converted = convert_django_field_with_choices(field, registry)
|
converted = convert_django_field_with_choices(field, registry)
|
||||||
fields[name] = converted
|
fields[name] = converted
|
||||||
|
|
||||||
|
attname = getattr(field, 'attname', '')
|
||||||
|
add_foreignkey_attname = all([
|
||||||
|
isinstance(field, ForeignKey),
|
||||||
|
options.include_foreignkey_ids,
|
||||||
|
attname not in fields,
|
||||||
|
])
|
||||||
|
if add_foreignkey_attname:
|
||||||
|
fields[field.attname] = convert_field_to_id(field)
|
||||||
|
|
||||||
return fields
|
return fields
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user