как сохранить чаты для уникального пользователя в основных данных и извлечь при необходимости swift - PullRequest
0 голосов
/ 26 августа 2018

В соответствии с моим требованием, я должен сохранить весь чат пользователя в основных данных с идентификатором пользователя, а при повторном посещении страницы пользователей затем загрузить предыдущий чат по идентификатору пользователя.

У меня есть объект чатов, который являетсяимея msg, userType и атрибуты времени.enter image description here

, который я должен сохранить в сущности «Пользователи», так же как каждое сообщение (объект «Чаты») пользователя должно быть сохранено в «Пользователи» и может быть повторно получено с использованием уникального идентификатора пользователя из основных данных..

enter image description here

Ниже код, который я использую для сохранения данных.

func saveDataToModel(msg:MessagesData)
    {
        let chats = Chats(context: context!)
        chats.msg = msg.message
        chats.userType = msg.userType

        users?.userChats = chats
        if let ids = viewModel?.userSelected?.id
        {
            users?.id = Int16(ids)
        }

        //saveContext()
        do {
            try context?.save()
        } catch {
            print("Failed saving")
        }
    }

И ниже код для извлечения

func getDataFromCoreData() {
        let request = NSFetchRequest<NSFetchRequestResult>(entityName: "Users")
        request.returnsObjectsAsFaults = false
        do {
            let result = try context?.fetch(request)
            if (result != nil) {
                for data in (result as? [NSManagedObject])! {
                    print("data",data)
                }
            }
        } catch {

            print("Failed")
        }
    }

Ниже приведена структура

struct MessagesData {
    var message:String?
    var userType:String?
}

Спасибо за любую помощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...