func foo(objects: [Int:[Int]]) {
for object in objects {
let new_object = MyObjectModel(id: object.key, object.value)
let result = createNewObject(db, new_object)
result.whenSuccess( {object in
print(object.id)
print(object.indexList)
})
result.whenFailure ({error in
print(error.localizedDescription)
})
}
}
func createNewObject(_ db: DatabaseConnectable, _ new_object: MyObjectModel) -> Future<MyObjectModel> {
return new_object.save(on: db)
}
//MyObjectModel.swift
import Vapor
import Foundation
import FluentPostgreSQL
final class MyObjectModel: Codable {
var id: OtherObject.ID? //Type = Int
var indexList: [ADiffObject.ID] //Type = Int
var createdAt: Date?
var updatedAt: Date?
init(id: OtherObject.ID, _ indexList: [ADiffObject.ID]) {
self.id = id
self.indexList = indexList
}
}
// MARK: Required Extensions
extension MyObjectModel: PostgreSQLModel{}
extension MyObjectModel: Content {}
extension MyObjectModel: Migration {}
extension MyObjectModel: Parameter {}
extension MyObjectModel: Timestampable {
static var createdAtKey: WritableKeyPath<MyObjectModel, Date?> {return \.createdAt}
static var updatedAtKey: WritableKeyPath<MyObjectModel, Date?> {return \.updatedAt}
}
// MARK: Relationships
extension MyObjectModel {}
No Data is Saved to the Database, The Table is empty. I have dropped the table and let it get recreated. Result is the same. no data in table despite reporting success.
/// 275940
/// [31, 43, 39, 75, 30, 319, 163, 1113, 28, 90, 34]
/// 275938
/// [31, 280, 39, 41, 28, 43, 75, 78, 30, 115, 42333]
/// 275939
/// [31, 280, 39, 28, 178, 43, 34, 29, 75, 42333]
/// 279987
/// [4077]
/// 275946
/// [336, 90, 31, 128, 43, 368]