Siddharth Gupta
Siddharth Gupta

Reputation: 897

Parse with Meteor JS

I am using Parse (http://parse.com) inside a Meteor Application (http://meteor.com)

I am trying to query my Parse Database from the server side, and everything is fine until I get to the query.

I get the following error:

[TypeError: Cannot call method 'getItem' of undefined]

This is what my code looks like: [I have even tried query.find()]

var VITxUser = Parse.Object.extend("VITxMaster");
var query = new Parse.Query(VITxUser);
query.equalTo("fbid", "1231212");
//no errors till here
query.first({
          success: function(object) {
            if (!object){
                //insert the user
                var GameScore = Parse.Object.extend("VITxMaster");
                var gameScore = new GameScore();
                gameScore.set("fbid", profile.id);
                gameScore.set("registrationNumber", "12DEV0000");
                gameScore.set("VITevents", "true");
                gameScore.save(null, {
                  success: function(gameScore) {
                    // Execute any logic that should take place after the object is saved.
                    alert('New object created with objectId: ' + gameScore.id + 'and fbid: ' + profile.id);
                  },
                  error: function(gameScore, error) {
                    // Execute any logic that should take place if the save fails.
                    // error is a Parse.Error with an error code and description.
                    alert('Failed to create new object, with error code: ' + error.description);
                  }
                });
            }
            else{
                console.log("found object");
                console.log(object.get("registrationNumber"));
            }

          }

        });

Upvotes: 1

Views: 1417

Answers (1)

Tarang
Tarang

Reputation: 75945

I can't see a reference to getItem in your code. I suspect however that the issue is due to meteor's variable scoping. Basically in Meteor each file is variable scoped. So you if you had two files file1.js and file2.js they would be wrapped around in a function(){..}.

You would need to remove the variable scoping by not using var to define your variables. Particularly the one's you want to be accessible globally (in other files)

Upvotes: 0

Related Questions