【发布时间】:2022-11-28 11:09:00
【问题描述】:
所以我遇到了一个奇怪的错误,我不明白为什么,而且在添加新项目之前没有发生过这种情况。
所以这是我得到的错误:
致命错误:“尝试!”表达式意外引发错误: Swift.DecodingError.keyNotFound(CodingKeys(stringValue: "小时", intValue: nil), Swift.DecodingError.Context(codingPath: [], debugDescription: "没有与键关联的值 CodingKeys(stringValue: "hours", intValue: nil) ("hours").", 底层错误:无))
这是我的设置:
地点.斯威夫特:
import SwiftUI import MapKit struct Place: Codable, Identifiable { // MARK: - DEFINE PROPERTIES let id: Int var b4aId = "" var admission: String var website: String var hours: String var show = false // MARK: - SET DEFAULT PROPERTIES static var `default` : Place { Place( id: 0, admission: "Free", website: "Website", hours: "Hours" ) } init( id: Int, admission: String, website: String, hours: String, show: Bool = false ) { self.id = id self.admission = admission self.website = website self.hours = hours self.show = show } init(with p: MGLocation) { self.id = atomicId.wrappingIncrementThenLoad(ordering: .relaxed) self.b4aId = p.objectId ?? "" self.admission = p.admission ?? "" self.website = p.website ?? "" self.hours = p.hours ?? "" self.show = false } }MGLocation.swift:
import Foundation import ParseSwift // MARK: - SET MGLOCATION PARSE OBJECT struct MGLocation: ParseObject { // Parse Properties var objectId: String? var createdAt: Date? var updatedAt: Date? var originalData: Data? var ACL: ParseACL? // Custom Properties var admission: String? var website: String? var hours: String? // Initialization init() {} init(objectId: String?) { self.objectId = objectId } }笔记:
admission和website工作得很好,但是一旦我添加hours它就会使应用程序崩溃。数据库有正确的列,所以我不知道与其他人相比我做错了什么。
另外,有没有更简单的方法来编写
Place类而不违背这么多的键实例?
【问题讨论】:
标签: ios swift parse-platform