mirror of
https://github.com/graphql-python/graphene-django.git
synced 2025-04-25 19:36:02 +03:00
Rename to DjangoField
This commit is contained in:
parent
e7a4538a3e
commit
1e1e849f4a
|
@ -154,18 +154,18 @@ class DjangoConnectionField(ConnectionField):
|
|||
)
|
||||
|
||||
|
||||
class PermissionField(Field):
|
||||
class DjangoField(Field):
|
||||
"""Class to manage permission for fields"""
|
||||
|
||||
def __init__(self, type, permissions=(), permissions_resolver=auth_resolver, *args, **kwargs):
|
||||
"""Get permissions to access a field"""
|
||||
super(PermissionField, self).__init__(type, *args, **kwargs)
|
||||
super(DjangoField, self).__init__(type, *args, **kwargs)
|
||||
self.permissions = permissions
|
||||
self.permissions_resolver = permissions_resolver
|
||||
|
||||
def get_resolver(self, parent_resolver):
|
||||
"""Intercept resolver to analyse permissions"""
|
||||
parent_resolver = super(PermissionField, self).get_resolver(parent_resolver)
|
||||
parent_resolver = super(DjangoField, self).get_resolver(parent_resolver)
|
||||
if self.permissions:
|
||||
return partial(get_unbound_function(self.permissions_resolver), parent_resolver, self.permissions, None, None, True)
|
||||
return parent_resolver
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
from unittest import TestCase
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from graphene_django.fields import PermissionField
|
||||
from graphene_django.fields import DjangoField
|
||||
|
||||
|
||||
class MyInstance(object):
|
||||
|
@ -14,7 +14,7 @@ class PermissionFieldTests(TestCase):
|
|||
|
||||
def test_permission_field(self):
|
||||
MyType = object()
|
||||
field = PermissionField(MyType, permissions=['perm1', 'perm2'], source='resolver')
|
||||
field = DjangoField(MyType, permissions=['perm1', 'perm2'], source='resolver')
|
||||
resolver = field.get_resolver(None)
|
||||
|
||||
class Viewer(object):
|
||||
|
@ -30,7 +30,7 @@ class PermissionFieldTests(TestCase):
|
|||
|
||||
def test_permission_field_without_permission(self):
|
||||
MyType = object()
|
||||
field = PermissionField(MyType, permissions=['perm1', 'perm2'], source='resolver')
|
||||
field = DjangoField(MyType, permissions=['perm1', 'perm2'], source='resolver')
|
||||
resolver = field.get_resolver(field.resolver)
|
||||
|
||||
class Viewer(object):
|
||||
|
|
Loading…
Reference in New Issue
Block a user