3

我正在尝试使用 Vapor 命令恢复 PostgreSQL 数据库:

vapor run prepare --revert -y

我把这个拿出来:

Running mist...
Are you sure you want to revert the database?
y/n>yes
Reverting Post
Reverted Post
Removing metadata
Reversion complete

如果您想知道,我已经尝试过多次这样做,所以Post全班准备好了,但其他人没有。

此命令恢复所有模型的表,除了一个(总共有四个)。

由于某种原因,“页面”表不会恢复。

当我在还原数据库后尝试运行应用程序时,我收到了这个错误:

invalidSQL("ERROR:  relation \"pages\" already exists\n")

下面是模型的数据库准备代码:

extension Page: Preparation {
    static func prepare(_ database: Database) throws {
        try database.create("pages", closure: { post in
            post.id()
            post.string("content", length: 10000)
            post.string("name")
            post.string("link")
        })
    }

    static func revert(_ database: Database) throws {
        try database.delete("pages")
    }
}
4

1 回答 1

3

我设法通过删除旧数据库来解决这个问题:

dropdb `whoami`

然后新建一个:

createdb `whoami`

问题解决了!

于 2017-01-09T15:44:32.347 回答