query = Query(Role)
r = query.equal_to('name', 'xxx').first()

之后获取到一个Role对象,在使用 get_users()方法之后获得是relation对象,之后改如何获得当前角色下的用户呢,或者判断用户在哪个角色中呢?

谢谢大家~~

r.get_users().query().find() 即可获得用户。

您好,采用了您的代码。
采用 app_id和app_key初始化数据。在_role表中有users这一个relation属性列,'c'这个角色已经和_user表中的两个对象与之关联。
代码:

query = Query(Role)
r = query.equal_to('name', 'c').first()

users = r.get_users().query().find()

或者采用

query = Query(Role)
query.get('56d6a3ef7db2a200557903c5')
role = query.first()
print role.get('name')  # 已经获取到name的值 c
posts = role.relation('users').query().find()

以上代码均报错误,代码如下:

Traceback (most recent call last):
  File "C:/Users/fred1/PycharmProjects/lean/test.py", line 21, in <module>
    users = r.get_users().query().find()
  File "C:\Python27\lib\site-packages\leancloud\query.py", line 181, in find
    content = utils.response_to_json(client.get('/classes/{0}'.format(self._query_class._class_name), self.dump()))
  File "C:\Python27\lib\site-packages\leancloud\client.py", line 83, in new_func
    return func(headers=headers, *args, **kwargs)
  File "C:\Python27\lib\site-packages\leancloud\client.py", line 144, in new_func
    raise leancloud.LeanCloudError(content.get('code', 1), content.get('error', 'Unknown Error'))
leancloud.errors.LeanCloudError: [1] Forbidden to find by class permissions.

这个是 ACL 权限的问题了,需要自行修正。