Вложенные транзакции не допускаются - PullRequest
0 голосов
/ 07 ноября 2018

Как можно удалить несколько объектов из области?

realm.beginTransaction
realm.executeTransaction(realm -> {
        for(String id : listOfIds) {

         realm.where(StorageClass.class).equalTo("id", id).findFirst().removeFromRealm();
        }
      }
  );
realm.commitTransaction();

Если я сделаю вышеупомянутое и попытаюсь удалить все идентификаторы из существующего списка идентификаторов, это выдаст мне следующую ошибку:

java.lang.IllegalStateException: Nested transactions are not allowed. Use commitTransaction() after each beginTransaction().
    at io.realm.internal.ImplicitTransaction.promoteToWrite(ImplicitTransaction.java:39)
    at io.realm.Realm.beginTransaction(Realm.java:1435)

Заранее спасибо

1 Ответ

0 голосов
/ 07 ноября 2018

Просто удалите realm.beginTransaction () и realm.commitTransaction (), потому что внутренние транзакции вызова вызывают начало и фиксируют транзакцию.

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