2016-11-05 55 views
1

我正在使用Backendless创建Swift应用程序。该应用程序会自动创建用户的用户名属性,尽管这可能会在将来更改。无论哪种方式,如何获得Backendless以防止用户注册,如果他们有相同的用户名?防止用户在后台登录使用相同的用户名

我已经允许用户注册之前Backendless(业务逻辑部分)来运行添加事件处理程序:

/* global Backendless */ 

/** 
* @param {Object} req The request object contains information about the request 
* @param {Object} req.context The execution context contains an information about application, current user and event 
* @param {Object} req.user 
*/ 
Backendless.ServerCode.User.beforeRegister(function(req) { 
    //add your code here 
}, true); 

我如何可以设置它来检查用户名值是一样的现有的,如果是的话,会抛出一个错误?

回答

1

这里是知道用户是否存在查询或不

let query = BackendlessDataQuery() 
let userEmail = "[email protected]" 
query.whereClause = "email = '\(userEmail)'" 
let users = backendless.data.of(BackendlessUser.ofClass()).find(query) 
if(users.data.count > 0) 
{ 
// user exists 
} 

Here

0

引用您可以设定在username列的唯一约束。这样你会在你的应用程序中收到一个错误,你可以按照你的意愿处理。

+0

我会这样做,但显然Backendless不允许对它预先制作的系统表进行约束。我想下一个最好的方法将是@Rajat建议的一个 –

+0

@EthanT看起来像一个错误,让我检查它... – Scadge

相关问题