база данных не существует - PostgreSQL на стороне сервера Swift с использованием Vapor 3 и Fluent

Я пишу веб-сервис на Swift, используя Vapor 3. Я использую FluentPostgreSQL для сохранения данных. У меня есть модель пользователя, которая соответствует обоим PostgreSQLModel, PostgreSQLMigration. Приложение строится правильно. Однако когда я запускаю приложение, я получаю следующую ошибку.

Fatal error: Error raised at top level: ⚠️ PostgreSQL Error: database "trialService" does not exist
- id: PostgreSQLError.server.fatal.InitPostgres

Так выглядит мой configure.swift.

try services.register(FluentPostgreSQLProvider())

let configPSQL = PostgreSQLDatabaseConfig(hostname: "localhost", username: "imthath", database: "trialService")
let psql = PostgreSQLDatabase(config: configPSQL)

var databases = DatabasesConfig()
databases.add(database: sqlite, as: .sqlite)
databases.add(database: psql, as: .psql)
services.register(databases)

Как видите, раньше я использовал SQLite, а теперь пытаюсь использовать PostgreSQL для некоторых моделей, включая User. Я не получал никаких ошибок, когда работал только с SQLite.


person Imthath    schedule 29.04.2019    source источник
comment
В качестве альтернативы для создания базы данных можно использовать такой инструмент, как Postico. А затем запустите vapor run migrate в терминале.   -  person icodes    schedule 21.04.2021


Ответы (1)


Вам необходимо создать базу данных из терминала, прежде чем ваше приложение Vapor сможет к ней подключиться:

createdb trialService
person Caleb Kleveter    schedule 29.04.2019