Sequelize,Typescript-Typescript对模型的getter方法出错

时间:2018-08-16 18:32:47

标签: node.js typescript sequelize.js

比方说,我有两个模型UserPost,它们之间是一对多的关系:

const User = sequelize.define('user', {
    ...
});

const Post = sequelize.define('post', {
    ...
});

User.hasMany(Post);

然后,如果我使用getPosts方法从用户那里收到一些帖子,

const user = await User.findOne({...});
const posts = await user.getPosts();
                         ^^^^^^^^

打字稿出错:

  

错误TS2339:类型'{}'不存在属性'getPosts'。

我应该怎么做?任何建议将不胜感激。

1 个答案:

答案 0 :(得分:1)

据我了解,Sequelize的TypeScript类型不完整。您可以在调用sequelize.define时指定对象的属性,如here所示,但这不会声明getPosts方法AFAIK。 sequelize-typescript软件包似乎提供了an alternative way to get related objects,尽管我本人还没有尝试过。