使用sails.js和现有的postgres数据库

我正在考虑使用Sails来开发我们正在开发的应用程序。

我正在使用使用waterline orm的sails-postgresql适配器。

我有一个现有的数据库,我想连接到。

如果我使用generate something创build一个模型

然后在我的模型中,我有

 attributes:{ title:{type:'String'} } 

如果我浏览本地主机/某些东西,orm删除除了标题之外的something表中的所有列。

有没有办法阻止它这样做? 这个应用程序不应该删除这个数据库上的列。

谢谢!

我是Sails-Postgresql的作者。 Sails有一个叫做Waterline的ORM,用来pipe理数据。 默认设置假定您想要auto-migrate数据库以匹配您的模型属性。 由于Postgresql是一个SQL数据库,Sails-Postgresql适配器有一个名为syncable的设置,默认为true。 在Redis之类的NoSQL数据库中这是错误的。

如果要自己pipe理数据库列,这很容易closures。 您可以将migrate: safe添加到您的模型中,并且在启动Sails时不会尝试更新数据库模式。

 module.exports = { adapter: 'postgresql', migrate: 'safe', attributes: { title: { type: 'string' } } }; 

帆在Rails中没有像迁移一样的东西。 它使用自动迁移来尝试将其从开发过程中移除,然后将生产模式更新为您。