mirror of
https://github.com/graphql-python/graphene-django.git
synced 2025-07-13 17:52:19 +03:00
feat(*) Add support to turn on/off reverse fields.
This commit is contained in:
parent
5d6c7f2dc3
commit
0fb39927e5
|
@ -16,7 +16,7 @@ from .utils import (DJANGO_FILTER_INSTALLED, get_model_fields,
|
||||||
|
|
||||||
|
|
||||||
def construct_fields(options):
|
def construct_fields(options):
|
||||||
_model_fields = get_model_fields(options.model)
|
_model_fields = get_model_fields(options)
|
||||||
only_fields = options.only_fields
|
only_fields = options.only_fields
|
||||||
exclude_fields = options.exclude_fields
|
exclude_fields = options.exclude_fields
|
||||||
|
|
||||||
|
@ -54,6 +54,7 @@ class DjangoObjectTypeMeta(ObjectTypeMeta):
|
||||||
name=name,
|
name=name,
|
||||||
description=attrs.pop('__doc__', None),
|
description=attrs.pop('__doc__', None),
|
||||||
model=None,
|
model=None,
|
||||||
|
reverse_fields=True,
|
||||||
local_fields=None,
|
local_fields=None,
|
||||||
only_fields=(),
|
only_fields=(),
|
||||||
exclude_fields=(),
|
exclude_fields=(),
|
||||||
|
|
|
@ -43,11 +43,13 @@ def maybe_queryset(value):
|
||||||
return value
|
return value
|
||||||
|
|
||||||
|
|
||||||
def get_model_fields(model):
|
def get_model_fields(options):
|
||||||
reverse_fields = get_reverse_fields(model)
|
model = options.model
|
||||||
all_fields = sorted(list(model._meta.fields) +
|
all_fields = sorted(list(model._meta.fields) +
|
||||||
list(model._meta.local_many_to_many))
|
list(model._meta.local_many_to_many))
|
||||||
all_fields += list(reverse_fields)
|
if options.reverse_fields:
|
||||||
|
reverse_fields = get_reverse_fields(model)
|
||||||
|
all_fields += list(reverse_fields)
|
||||||
|
|
||||||
return all_fields
|
return all_fields
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user