class Foobar: Model {}
extension Foobar: Migration {}
Когда вы просто создаете новую модель и также хотите создать таблицу в базе данных, этих двух строк может быть уже достаточно.
Если вы хотите предоставить больше свойств с примитивными типами, такими как var id: Int?
Vapor знают, как с этим справиться.
Но что, если у вас что-то подобное ...
enum FancyType: String, Codable {
case awesome
// ...
}
... и ваша модель ожидает значение по умолчанию для инициализации и таблицыcreation?
class Foobar: Model {
let fancy: FancyType
init(fancy: FancyType = .awesome) {
self.fancy = fancy
}
}
В моем случае это просто сбой с фатальной ошибкой:
DecodingError: Невозможно инициализировать Foobar из недопустимого строкового значения 0
При этом мне интересно, как на самом деле настроить значения по умолчанию при создании таблицы.