2016-04-12 7 views
0

Im new to javascriptとimはデータベース内で複数の列を一意にすることができません。データベースにすでに存在する場合、そのユーザーはデータを保存できません。私はパースクラウドmain.jsファイルでこれをしようとしています。複数の列を作成する方法Javascript、Parseクラウドコードを使用してユニーク?

私は、ユーザー名を持つカスタムユーザープロファイルクラス(のUserProfile)を持っている&にphoneNumberをEMAILIDと私は、これはユニークなままにしたいと思います。

以下は、3つの列すべてで展開できないクラウドコードです。しかし、あなたがパースでのMongoDBを使用している場合は、ユーザー名のみ

var UserProfile = Parse.Object.extend("UserProfile"); 

         if (!request.object.get("userImage")) { 
        response.error('User must be unique'); 
        } else { 
        var query = new Parse.Query(UserProfile); 
        query.equalTo("userImage", request.object.get("userImage")); 
        query.first({ 
           success: function(object) { 
           if (object) { 
           response.error("User already exists"); 
           } else { 
           response.success(); 
           } 
           }, 
           error: function(error) { 
           response.error("Could not validate uniqueness for this user."); 
           } 
           }); 
        } 

答えて

0

のために正常に動作します:

を私は、データベース内のインデックスを追加するRobomongo(MongoDBのためのGUIツール)を使用しました。そこには、USERPROFILEクラスでこのインデックスを追加することができます誰かがこのインデックスを上書きしようとした場合

index db.createIndex({userName:1, emailID:1,phoneNumber:1}, {unique:true})

はその後、MongoDBはエラーをスローします。私は "mongodb indexing"についていくつかのyoutubeの動画を見て、mongodbインデックスについて多くのことを学びました。役に立ったら嬉しいです

+0

とてもありがとう、私はそれを試してみます。 – vanquish

関連する問題