2016-12-06 4 views
0

Как сохранить массив UIImage в базе данных Realm?Добавление массива изображений в базу данных Realm

Мой объект класса:

class DataBase: Object{  
    dynamic var code: String = "" 
    dynamic var capture: [UIImage] = [] // it doesn't work 
} 

Мой «добавить в базу данных» Функция:

func addToDB() { 
    let realm = try! Realm()   
    let myObject = DataBase() 
    myObject.code = self.code 
    myObject.capture = self.capture // here should something better    

    try! realm.write { 
     realm.add(myObject) 
    } 
} 

Как я понимаю, что можно сохранить путь-х изображений в БД. Но как я могу это сделать для массива?

+1

Используйте список Царства вместо Swift Array. – Michal

+0

Преобразование массива в кодировку base64. http://iosdevelopertips.com/core-services/encode-decode-using-base64.html и отправьте это значение. –

+1

Если вы хотите сохранить изображение в царстве, вам необходимо закодировать их и сохранить как NSData, просто не советуясь, просто сохраните изображение в папке документов приложения и сохраните его путь/имя в Realm, также прочитайте документы – Tj3n

ответ

0

Чтобы развернуть на комментарий Tj3n «s выше, я предлагаю вам хранить ваши изображения на диске, в формате PNG или JPEGs и хранить List<RealmImage> как свойство, где RealmImage представляет собой метаданные Realm модель, содержащая изображение, которое вы хотите сохранить, наряду с путь к местоположению PNG/JPEG на диске.

Смежные вопросы