SchemaSwift

一个 Swift 版本的 schemats 移植。 从你的 PostgreSQL 模式生成 Swift 结构体。

SchemaSwift 旨在作为命令行工具运行。

SchemaSwift --url <your postgres url> \
    --override users.email=Email \
    --swift-namespace DB \
    --protocols "Equatable, Hashable, Identifiable"

可用选项

url

必需,指向 Postgres 实例的 URL。

output, o

包含输出结果的文件的位置。 如果未指定文件,将输出到标准输出 (stdout)。

schema

数据库中用于生成模型的模式。 如果未指定,则默认为 "public"。

protocols

应用于每个记录结构体的一系列以逗号分隔的协议。 始终包含 Codable 遵循。 如果未指定,则默认添加 "Equatable, Hashable"。

swift-namespace

一个空的枚举,用作所有类型都将放入的命名空间。 如果未指定,则类型将不会放入枚举中。

override

用于生成的类型的覆盖。 格式必须为 table.column=Type。 可以包含多个覆盖。