2014-11-20 21 views
1

我正在試圖找到一種方法來讓我的團隊模型中的用戶不使用多對多。用sailsjs找不到模型的用戶

我創建了一個方法調用getCaptain在Team.js:

getCaptain: function(){ 
    User.findOne(this.admins[0],function foundUser(err, user){ 
    if(err) return "ERROR" 
    if(!user) return "No captain" 
    return user; 
    }); 
}, 

團隊,我有: 「名」 是的PrimaryKey

{ 
"name": "abc", 
"id": null, 
"players": [ 
    4 
], 
"admins": [ 
    4 
], 
"createdAt": "2014-11-20T18:36:10.559Z", 
"updatedAt": "2014-11-20T18:36:10.559Z" 
} 

如果我把console.log(abc.getCaptain()),它返回undefined即使用戶4存在。

函數本身是否存在任何問題,或者我無法在團隊模型中查找用戶?

+0

感謝您的回答保羅,我總是使用這種語法,它usuelly的作品。我也嘗試過你,並沒有改變任何東西。 – user3572492 2014-11-20 23:10:04

回答

0

我從來沒有嘗試過使用findOne的語法。你有沒有試過文檔中的那個?

User.findOne({ id: 1 }, function(err, user) { 
    // Do stuff here 
}); 

也許它不會自動識別整數4作爲對id字段的查詢。