sailsjs单向协会混淆

时间:2018-03-15 16:19:44

标签: sails.js associations

我很难将自己的头脑包裹在与sailsjs的联系中。

我有2个模特

服务

attributes: {
    status: {
        defaultsTo: 'inactive'
    },
    userId:{
        model: 'users',
        via: 'id',
      },

},

用户

  attributes: {
    email: {
        type: 'string',
        required: true,
        unique: true
    },
    password: {
        type: 'string'
    }

  },

因此,服务与用户绑定(匹配用户的ID)。

我曾经打过http://localhost:1337/Services?userId= userId

这样的电话

现在我想使用上面的模型属性转换到关联。

这可以通过调用服务的ID很好(它也包括用户数据),但是如果我只有用户,我怎么能得到服务

执行相同的调用(http://localhost:1337/Services?userId= userId )会返回并清空对象。

我是否被迫实际上有一对一或一对多的关联?我不明白为什么一旦开始使用关联,我就不能再使用userId字段(存储在数据库中)来进行查询。我想我在这里寻找两全其美。

编辑:

让我试着让这个更清楚。在尝试进行关联之前,我可以调用此URL(使用蓝图)

http://localhost:1337/Services?userId=userId

服务模型过去看起来像这样

attributes: {
status: {
    defaultsTo: 'inactive'
},
userId:{
    type: 'string',
    required: true,
  },

  },

然后,当创建用户时,将创建该用户的服务,其userId与Users表中的ID匹配。

现在我想使用上面的模型方案实现关联。

但是,因为(我的最佳猜测)服务的 userId 字段已映射到用户模型,我无法使用 userId 字段搜索服务器那是存储的。

我希望这有道理吗?换句话说,试着打电话

http://localhost:1337/Services?userId=userId

在使用关联时不返回任何内容,但在我不使用关联时返回值

0 个答案:

没有答案