sequelize-auto
库生成模型,但在使用 MySQL 视图时遇到问题。
我创建了一个视图并从中生成一个续集模型。此视图没有名为
id
的列。 MySQL 也不允许视图定义主键。由于sequelize 的工作原理,任何没有定义特定主键的模型都会添加一个 id
列。这破坏了生成的模型。
我可以通过向构成视图中唯一条目的字段添加
primaryKey
标志来修改我的模型来解决此问题。然而,每次我使用sequelize-auto生成模型时,这些更改都会被覆盖。
sequelize-v7-alpha
添加了将表定义为没有主键的功能。因此,在 v6 中使用 MySQL 视图可能是该库的特定限制。
我想做的只是添加某种类型的模型覆盖,在从数据库生成
sequlize-auto
模型后,我可以指定要添加属性的模型的哪些列。但是,我无法弄清楚任何可以做到这一点的配置。有谁知道如何执行此操作或解决此类情况的解决方法?
我决定使用 uuid 函数修改我的视图以拥有 id 列作为解决方法。我不喜欢它,但应该能够使用sequelize v7 发布选项或删除sequelize-auto 依赖项来删除它。