IDに基づいてember jsの検索を行いたいです。
その ID を持つオブジェクトが存在する場合、そのオブジェクトに対して何らかのロジックを実行したいと思います。
そのため、次のコードに基づいてこれを行います。
Cluey.UsersController = Ember.ArrayController.extend({
keypadNum: "",
loginWithPin: function() {
var res;
console.log("Login with pin: " + this.get('loginPin'));
res = Cluey.User.find({
pin: this.get('loginPin')
});
return res.on('didLoad', function() {
var user;
if (res.get('firstObject') != null) {
user = res.objectAt(0);
return this.doLogin(user);
} else {
return alert("User not found with pin " + this.get('loginPin'));
}
});
},
doLogin: function(user) {
//some code
}
});
問題は、 res.on('didLoad') コールバックに入ると、コントローラーのスコープが失われるため、 this.get("loginPin") にアクセスしようとすると、未定義として返されることです。
誰でもこれを解決する方法を知っていますか。
ありがとう!