js支持数据库视图吗?



我想将我的应用程序迁移到sails.js。但是,我使用数据库视图在我的PostgreSQL数据库的一些功能。

我试着为这个视图做一个模型。但是,当我执行sails lift时,它会导致ORM错误。

error: A hook (`orm`) failed to load!
error: error: relation "homeview" already exists
at Connection.parseE (/home/onlinemad/git/appname2/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:561:11)
at Connection.parseMessage (/home/onlinemad/git/appname2/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:390:17)
at null.<anonymous> (/home/onlinemad/git/appname2/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:92:20)
at Socket.EventEmitter.emit (events.js:95:17)
at Socket.<anonymous> (_stream_readable.js:746:14)
at Socket.EventEmitter.emit (events.js:92:17)
at emitReadable_ (_stream_readable.js:408:10)
at emitReadable (_stream_readable.js:404:5)
at readableAddChunk (_stream_readable.js:165:9)
at Socket.Readable.push (_stream_readable.js:127:10)

sails.js是否支持数据库视图,如果支持,是否需要特殊配置?

你可以通过在使用该视图的模型中设置migrate属性为safe来使用数据库视图:

module.exports = {
   migrate: 'safe',
   attributes: {
      ...
   }
}

这将限制Sails在视图上执行迁移,这意味着如果您向模型添加新属性,它们将而不是自动添加到数据库视图。您必须手动保持您的Sails模型和数据库视图同步。

最新更新