环回相关模型属性问题

问题描述:

我有一个user模型(扩大从内置User)和UserDetail模型,相关:环回相关模型属性问题

user关系:

"relations": { 
     "userDetails": { 
      "type": "hasOne", 
      "model": "UserDetail", 
      "foreignKey": "userDetailUserId" 
     }, 

如果我在节点上运行下面的代码,我可以在返回的对象上看到userDetails属性,但无法直接访问它。

var User = app.models.user; 
User.findOne({ 
     include: 'userDetails', 
     where: {id: userId} 
},function(err,user){ 
    console.log('log'); 
    console.log(user); 
    console.log(user.userDetails); 
    console.log(user.userDetailFirstName); 
    console.log(user.userDetails.userDetailFirstName); 
}) 

的日志如下:

log 

{ my user details .... 
id: 100, 
userDetails: 
    { userDetailId: 13, 
    userDetailUserId: 100, 
    userDetailFirstName: 'Stephen', 
    userDetailLastName: 'Knox',} } 
{ [Function] 
    getAsync: [Function], 
    create: [Function], 
    build: [Function], 
    update: [Function], 
    destroy: [Function], 
    _targetClass: 'UserDetail' } 

undefined 
undefined 

而不是给我的UserDetails对象,这是我所看到的,我得到的hasOne methods。这看起来很奇怪,但我无法找到模型或关系定义的任何错误。

任何人都可以帮忙吗?

我相信,要访问相关模型,您需要调用user.userDetails()。

或者,你可以调用user.toJSON(),这会给你一个简单的JS对象

我拉我的头发试图了解为什么我没有得到一个相关的对象。试用.toJSON()修复了它。