2016-11-05 11 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

はあなたがusername列にUNIQUE制約を設定することがHere

0

から参照

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 
} 

ユーザが存在するか否かを知るためのクエリです。このようにして、アプリケーションでエラーが発生します。これは、必要に応じて処理できます。

+0

私はこれをしますが、明らかにBackendlessは、あらかじめ作られたシステムテーブルに制約を与えません。次の最良の方法は@Rajatが提案するものだと思います –

+0

@EthanTはバグのように見えますが、それをチェックさせてください... – Scadge

関連する問題