我想使用 sequelize 正确设置一对一或一对多的关系,事实上,如果我在我的模型定义中使用hasOne
/hasMany
或其中之一,一切似乎都可以正常工作belongsTo
。例如,以下关联会userId
在其目标上创建字段:
User.hasMany(Email, {
as: 'emails',
foreignKey: 'userId',
})
User.hasOne(Profile, {
as: 'profile',
foreignKey: 'userId',
})
Run Code Online (Sandbox Code Playgroud)
但几乎在官方文档的任何地方,我都会看到类似的内容:
Projects.hasMany(Tasks);
Tasks.belongsTo(Projects);
Run Code Online (Sandbox Code Playgroud)
即hasMany
ANDbelongsTo
被一起使用。
这真的是必需的还是仅使用其中之一就足够了?任何进一步的解释将是非常有价值的。谢谢!
如何在迁移中正确删除然后重新创建用于Postgres的sequelize的ENUM类型?例如,此迁移不会丢弃enum_Users_status
枚举...因此,在创建status
值之后重新创建/更改值的任何尝试都将失败.
module.exports = {
up: function (queryInterface, DataTypes) {
queryInterface.createTable('Users', {
//...
status: {
type: DataTypes.ENUM,
values: [
'online',
'offline',
],
defaultValue: 'online'
}
//...
})
},
down: function (queryInterface) {
queryInterface.dropTable('Users')
},
}
Run Code Online (Sandbox Code Playgroud)
最终我确实设法删除了内部的枚举类型down
,但随后up
迁移(应该status
从头创建这个枚举)失败,说public.enum_Users_status
枚举类型之类的东西不存在.
我有一个带有自签名SSL的快递服务器,该服务器仅为SPA前端提供资产。当我访问https://localhost:8433
应用程序统计信息并成功获取所有需要的资产时。但是,与此同时,应用程序的服务工作者(工作箱)也会发送其请求以缓存相同的资产。这些请求随机失败,并带有TypeError: Failed to fetch
似乎有些请求被服务工作者随机取消。
我已经尝试寻找类似的问题,但是没有发现。有些建议玩弄CORS,没有帮助,交换localhost
的127.0.0.1
或改变缓存策略有同样的效果,最后我不得不用预先缓存只(不运行缓存)的很小的配置,可惜的是没有什么帮助。
我很确定这应该是一个普遍的问题,我只是想念它:)有人有什么想法吗?
顺便说一句,当从不安全的地方提供应用程序时http
-完全没有错误。