@@ -35,6 +35,9 @@ final class CustomCollection: @unchecked Sendable, Model, Content {
3535
3636 // data fields
3737
38+ @Field ( key: " key " )
39+ var key : String
40+
3841 @Field ( key: " name " )
3942 var name : String
4043
@@ -58,6 +61,7 @@ final class CustomCollection: @unchecked Sendable, Model, Content {
5861 self . id = id
5962 self . createdAt = createdAt
6063 self . updatedAt = updatedAt
64+ self . key = details. key
6165 self . name = details. name
6266 self . description = details. description
6367 self . badge = details. badge
@@ -68,6 +72,7 @@ final class CustomCollection: @unchecked Sendable, Model, Content {
6872
6973extension CustomCollection {
7074 struct Details : Codable , Equatable {
75+ var key : String
7176 var name : String
7277 var description : String ?
7378 var badge : String ?
@@ -76,7 +81,7 @@ extension CustomCollection {
7681
7782 static func findOrCreate( on database: Database , _ details: Details ) async throws -> CustomCollection {
7883 if let collection = try await CustomCollection . query ( on: database)
79- . filter ( \. $url == details. url )
84+ . filter ( \. $key == details. key )
8085 . first ( ) {
8186 return collection
8287 } else {
@@ -101,7 +106,7 @@ extension CustomCollection {
101106 }
102107
103108 var details : Details {
104- . init( name: name, description: description, badge: badge, url: url)
109+ . init( key : key , name: name, description: description, badge: badge, url: url)
105110 }
106111}
107112
0 commit comments