Je suis en train de revenir une base de données PostgreSQL avec la commande de vapeur:vapeur Erreur PostgreSQL: invalidSQL ("ERREUR: relation " pages "existe déjà n")
vapor run prepare --revert -y
Je reçois ce eteint :
Running mist...
Are you sure you want to revert the database?
y/n>yes
Reverting Post
Reverted Post
Removing metadata
Reversion complete
si vous vous demandez, je l'ai essayé de faire ce à plusieurs reprises, de sorte que la classe Post
se prépare, mais les autres ne le font pas.
Cette commande rétablit les tables pour tous les modèles, sauf un (il y en a quatre au total).
Pour une raison quelconque, le tableau 'pages' ne reviendra pas.
Et quand je tente de lancer l'application après avoir restauré la base de données, je reçois cette erreur:
invalidSQL("ERROR: relation \"pages\" already exists\n")
Voici le code de préparation de base de données pour le modèle:
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")
}
}
Il semble que l'enregistrement 'Page' soit en quelque sorte absent de la table' fluent', donc il ne sait pas inclure cette table dans l'opération de retour. – tobygriffin