我阅读了有关如何将@login_required和其他修饰符与解析器一起使用的说明。但是,如果没有使用显式解析器(而不是默认解析器),那么如何执行类似的访问控制?
就我而言,我在Django User模型中使用了石墨烯。我有以下内容:
class UserNode(DjangoObjectType):
class Meta:
model = User
filter_fields = ['first_name', 'last_name', 'id', 'email']
interfaces = (Node, )
class Query(object):
userNode = relay.Node.Field(UserNode)
all_users = DjangoConnectionField(UserNode)
如果我显式定义一个'resolve_all_users'方法并在其上使用@login_required装饰器,则它可以正常工作。但是我架构中的这个(和其他对象)依赖于默认解析器。如何保护它们而不必显式定义解析器?
我承认自己是使用石墨烯/ graphql的新手……非常感谢向我指出正确方向的任何帮助。
答案 0 :(得分:0)
没有明确定义resolve_
方法的简单方法。
但是您仍然可以继承Field
类并添加额外的构造函数参数以支持此功能或使用resolve_
:)