From c2b1f2eaa1438f92e5130ebc4908088a2a9038a8 Mon Sep 17 00:00:00 2001 From: Panos Angelopoulos Date: Mon, 13 Apr 2020 14:22:58 +0300 Subject: [PATCH 1/4] Refactor fields logic --- graphql_auth/schema.py | 2 +- graphql_auth/settings.py | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/graphql_auth/schema.py b/graphql_auth/schema.py index 636452c..cda13c1 100644 --- a/graphql_auth/schema.py +++ b/graphql_auth/schema.py @@ -11,7 +11,7 @@ class UserNode(DjangoObjectType): class Meta: model = get_user_model() filter_fields = app_settings.USER_NODE_FILTER_FIELDS - exclude_fields = app_settings.USER_NODE_EXCLUDE_FIELDS + fields = app_settings.USER_NODE_FIELDS interfaces = (graphene.relay.Node,) pk = graphene.Int() diff --git a/graphql_auth/settings.py b/graphql_auth/settings.py index 9aa35d8..cec44ce 100644 --- a/graphql_auth/settings.py +++ b/graphql_auth/settings.py @@ -53,7 +53,16 @@ "EMAIL_TEMPLATE_SECONDARY_EMAIL_ACTIVATION": "email/activation_email.html", "EMAIL_TEMPLATE_PASSWORD_RESET": "email/password_reset_email.html", # query stuff - "USER_NODE_EXCLUDE_FIELDS": ["password", "is_superuser"], + "USER_NODE_FIELDS": [ + "email", + "username", + "last_login", + "isStaff", + "isActive", + "archieved", + "verified", + "secondary_email", + ], "USER_NODE_FILTER_FIELDS": { "email": ["exact"], "username": ["exact", "icontains", "istartswith"], From c3dd88af93d331efb1dbc6aeb9764d654f5a321d Mon Sep 17 00:00:00 2001 From: Panos Angelopoulos Date: Mon, 13 Apr 2020 14:29:22 +0300 Subject: [PATCH 2/4] Revert Exclude fields --- graphql_auth/schema.py | 1 + graphql_auth/settings.py | 1 + 2 files changed, 2 insertions(+) diff --git a/graphql_auth/schema.py b/graphql_auth/schema.py index cda13c1..b8ac18a 100644 --- a/graphql_auth/schema.py +++ b/graphql_auth/schema.py @@ -11,6 +11,7 @@ class UserNode(DjangoObjectType): class Meta: model = get_user_model() filter_fields = app_settings.USER_NODE_FILTER_FIELDS + exclude_fields = app_settings.USER_NODE_EXCLUDE_FIELDS fields = app_settings.USER_NODE_FIELDS interfaces = (graphene.relay.Node,) diff --git a/graphql_auth/settings.py b/graphql_auth/settings.py index cec44ce..7bc92f5 100644 --- a/graphql_auth/settings.py +++ b/graphql_auth/settings.py @@ -53,6 +53,7 @@ "EMAIL_TEMPLATE_SECONDARY_EMAIL_ACTIVATION": "email/activation_email.html", "EMAIL_TEMPLATE_PASSWORD_RESET": "email/password_reset_email.html", # query stuff + "USER_NODE_EXCLUDE_FIELDS": ["password", "is_superuser"], "USER_NODE_FIELDS": [ "email", "username", From 6d8505a10476b72438867819eb19ee1a081bbff3 Mon Sep 17 00:00:00 2001 From: Panos Angelopoulos Date: Mon, 13 Apr 2020 20:47:52 +0300 Subject: [PATCH 3/4] Drop exclude fields support --- graphql_auth/schema.py | 1 - graphql_auth/settings.py | 1 - 2 files changed, 2 deletions(-) diff --git a/graphql_auth/schema.py b/graphql_auth/schema.py index b8ac18a..cda13c1 100644 --- a/graphql_auth/schema.py +++ b/graphql_auth/schema.py @@ -11,7 +11,6 @@ class UserNode(DjangoObjectType): class Meta: model = get_user_model() filter_fields = app_settings.USER_NODE_FILTER_FIELDS - exclude_fields = app_settings.USER_NODE_EXCLUDE_FIELDS fields = app_settings.USER_NODE_FIELDS interfaces = (graphene.relay.Node,) diff --git a/graphql_auth/settings.py b/graphql_auth/settings.py index 7bc92f5..cec44ce 100644 --- a/graphql_auth/settings.py +++ b/graphql_auth/settings.py @@ -53,7 +53,6 @@ "EMAIL_TEMPLATE_SECONDARY_EMAIL_ACTIVATION": "email/activation_email.html", "EMAIL_TEMPLATE_PASSWORD_RESET": "email/password_reset_email.html", # query stuff - "USER_NODE_EXCLUDE_FIELDS": ["password", "is_superuser"], "USER_NODE_FIELDS": [ "email", "username", From 815b56350c50bca04deddc3817d637b706d9f898 Mon Sep 17 00:00:00 2001 From: Panos Angelopoulos Date: Mon, 13 Apr 2020 20:57:46 +0300 Subject: [PATCH 4/4] Update docs --- docs/settings.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/settings.md b/docs/settings.md index 2e87555..24ec2ee 100644 --- a/docs/settings.md +++ b/docs/settings.md @@ -124,9 +124,9 @@ default: } ``` -### USER_NODE_EXCLUDE_FIELDS +### USER_NODE_FIELDS -default: `#!python ["password", "is_superuser"]` +default: `#!python ["email", "username", "last_login", "isStaff", "isActive", "archieved", "verified", "secondary_email"]` ---