2015-01-30 1 views
2

Я не могу удалить объект в базе данных царств: Я следующее исключение:Невозможно удалить объект в базе данных царств

0x108196d6f: movq 0x202112(%rip), %rcx  ; "exceptionWithName:reason:userInfo:" 
0x108196d76: leaq 0x1e6d0b(%rip), %rdx  ; @"RLMException" 
0x108196d7d: leaq 0x1e71c4(%rip), %rbx  ; @"Unable to delete an object not persisted in this Realm." 

Запись находится в базе данных, когда я проверяю с царств браузера! !! У кого была такая же проблема?

это мой код:

func deleteDatabase() { 
    let realm = RLMRealm.defaultRealm() 
    realm.beginWriteTransaction() 
    for result in deleteUoMArray { 
     var item = result as UoM 
     var uomObject = UnitOfMeasurement() 
     uomObject.guid = item.guid 
     uomObject.unitOfMeasurement = item.unitOfMeasurement 
     uomObject.selected = item.selected 
     uomObject.index = item.index 
     realm.deleteObject(uomObject) 
    } 
    realm.commitWriteTransaction() 
} 

ответ

1

Если ваша цель состоит в том, чтобы удалить все объекты в базе данных, как имя функции deleteDatabase подразумевало бы, все, что вам нужно сделать, это вызов:

let realm = RLMRealm.defaultRealm() 
realm.beginWriteTransaction() 
realm.deleteAllObjects() 
realm.commitWriteTransaction() 

в противном случае, если deleteUoMArray является Array, RLMResults или RLMArray объектов для удаления, вы можете позвонить realm.deleteObjects(deleteUoMArray).

+0

Моя цель - удалить объекты в массиве. Сбой в реализации объекта realm.deleteObjects (deleteUoMArray) с RLMObjects UoM имеет ту же проблему. –

+0

Не создавайте массив новых объектов UoM ... Используйте запрос и удалите полученные RLMResults – segiddins

+0

Спасибо, что работает –

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

  • Нет связанных вопросов^_^