Sequelize:当对象从 table 中拉出时,有没有办法修改对象?
Sequelize: Is there any way to amend an object when it's pulled out of a table?
我有一个用户 table 和一组电子邮件(从不同的数据库中获取),表示电子邮件是否是付费的。
我希望我的 ORM 每次将用户从数据库中拉出时附加 user.premium
。它所要做的就是user.premium = premiumEmails.includes(user.email)
我能够使用 afterFind
挂钩来完成这个确切的操作,当我使用 User.findOne
或 User.find
时它可以工作,但当我通过关系获得用户时却不行.
当我执行 Post.find
时,我希望 Sequelize 查看 post.user
并将相同的 premium
字段附加到属于 post 的用户。
有什么办法可以做到吗?
这是一个带有 Sequelize 的 known issue,并且由于最近 activity 缺少有关链接 GitHub 的问题,我认为这不会很快得到解决。
最好的办法是在 returns premiumEmails.includes(this.email)
的用户模型上定义一个 Virtual field(注意使用 this
而不是 user
) .
我有一个用户 table 和一组电子邮件(从不同的数据库中获取),表示电子邮件是否是付费的。
我希望我的 ORM 每次将用户从数据库中拉出时附加 user.premium
。它所要做的就是user.premium = premiumEmails.includes(user.email)
我能够使用 afterFind
挂钩来完成这个确切的操作,当我使用 User.findOne
或 User.find
时它可以工作,但当我通过关系获得用户时却不行.
当我执行 Post.find
时,我希望 Sequelize 查看 post.user
并将相同的 premium
字段附加到属于 post 的用户。
有什么办法可以做到吗?
这是一个带有 Sequelize 的 known issue,并且由于最近 activity 缺少有关链接 GitHub 的问题,我认为这不会很快得到解决。
最好的办法是在 returns premiumEmails.includes(this.email)
的用户模型上定义一个 Virtual field(注意使用 this
而不是 user
) .