在解析中获取用户角色

ait*_*han 1 mongodb-query parse-server

我正在尝试在云功能中获取登录时的用户角色。我知道这是一个非常简单的任务,但我无法解决它。我尝试了文档提到的使用方式,innerQuery但似乎也不起作用。由于我相对较新,我确信我犯了一个愚蠢的错误。你能指出我的错误吗?

我的函数如下所示:

Parse.Cloud.define('login', async (req, res) => {
    // TODO: put a validation layer here
    // if (!req.user) res.error('user undefined');

    if (!req.params.email || !req.params.password) res.error('email/password is required');
    const userQuery = new Parse.Query(Parse.User);
    const roleQuery = new Parse.Query(Parse.Role);
    try {
        const user = await Parse.User.logIn(req.params.email, req.params.password);
        const userRoleQuery = user.relation(Parse.Role).query();

        const role = await userRoleQuery.find();

        res.success(role);
    } catch (error) {
        res.error(error);
    }
});
Run Code Online (Sandbox Code Playgroud)

附件也是我的_Join:users_Role表格:我正在查询第二个用户。

图像

小智 5

你也可以这样做:

Parse.Cloud.define('getRole', async (request) => {
  const query = await new Parse.Query(Parse.Role).equalTo('users', request.user).find()
  return query
})
Run Code Online (Sandbox Code Playgroud)

或者您可以在客户端中仅使用第二行