在Parse中检索字符串

时间:2015-01-24 21:43:24

标签: javascript html angularjs parse-platform

我正在尝试从Parse Customers类中检索两个字符串。我想将这些字符串(分别为usernameAdmin和passwordAdmin)与用户输入的输入字段进行比较,如果匹配则将它们带到特定页面。

我出于特殊原因采取这种方法,并希望得到反馈。

    $scope.logIn = function(form) {

  var Customer = Parse.Object.extend("Customers");

    parseAdminUsername = Customer.get('usernameAdmin');
    parseAdminPassword =    Customer.get('passwordAdmin');



    if (form.lusername == parseAdminUsername && form.lpassword == parseAdminPassword) {

      window.location = 'adminSelect.php'
    } else {
    alert('error');
}

  };

html代码如下所示:

<form role="form"  ng-show="scenario == 'Sign up'">
<h4 id="wrongCredentials"></h4>
<input id="signupformItem" ng-model="user.lusername" type="email" name="email" placeholder="Email Address"> <br>
<input id="signupformItem" ng-model="user.lpassword" type="password" name="password" placeholder=" Password"> <br>

<br>
<button id="signupbuttonFinal" ng-click="logIn(user)" class="btn btn-danger"> Sign In</button>

</form>

我在控制台上收到以下错误:

 undefined is not a function
    at Object.$scope.logIn 

以下是

parseAdminUsername = Customer.get('usernameAdmin');

1 个答案:

答案 0 :(得分:0)

最好在内置用户中使用Parse而不是创建单独的对象,然后使用Parse.User.logIn

如果你要使用你的桌子。 Customer.get('usernameAdmin')用于在执行查询以返回记录后返回字段。您最好执行查找查询以检查用户名和密码,如下所示:

var Customer = Parse.Object.extend("Customers");
var query = new Parse.Query(Customer);
query.equalTo("usernameAdmin", form.lusername);
query.equalTo("passwordAdmin", form.lpassword);

query.find({
  success: function(results) {
    if (results.length > 0) {
        window.location = 'adminSelect.php';
    }
  },
  error: function(error) {
    // The object was not retrieved successfully.
    // error is a Parse.Error with an error code and message.
  }
});

我建议不要使用window而不是$ window,以便您可以对代码进行单元测试。更好的是使用角度路由并创建单页应用程序。