Постоянный удаленный JSON с CoreData - PullRequest
0 голосов
/ 23 апреля 2020

Я могу успешно отобразить JSON для пользователя, теперь я могу sh, чтобы иметь возможность отображать эту же информацию пользователям, которые перезагружают мое приложение, но находятся в автономном режиме. Я прочитал несколько руководств по coreData, но не могу найти правильные ответы на следующие вопросы:

  1. Должен ли объект coredata иметь то же количество атрибутов, что и JSON, который он представляет есть ключи?
  2. Если у моего JSON есть ключ, который представляет ключевое слово в coreData (например: description, который заставляет меня называть этот атрибут чем-то другим), как мне связать это обратно? к моей базовой модели?
  3. Как я могу представить собственный массив, созданный в моей модели в моей сущности coredata?

Для справки, у меня нижеприведенная модель основана на моем JSON. Единственные ключи, которые я на самом деле использую в своем приложении, это description, list_price, images & title.

struct Item: Codable {
    let id: String
    let title: String
    let description: String
    let listPrice: String
    let ageRestricted: Bool
    let volume: Int?
    let createdAt: String
    let attributes: [Attributes]
    let images: Images

    enum CodingKeys: String, CodingKey {
        case id
        case title
        case description
        case listPrice = "list_price"
        case ageRestricted = "age_restricted"
        case volume
        case createdAt = "created_at"
        case attributes
        case images
    }
}

struct Attributes: Codable {
    let id: String
    let title: String
}

struct Images: Codable {
    let theSize: TheSize?

    enum CodingKeys: String, CodingKey {
        case theSize = "300"
    }
}

struct theSize: Codable {
    let src: String
    let url: String
    let width: Int
}
...