Realm React Native:如何在某些条件下从对象的嵌套数组中删除元素

Realm React Native: How remove element from object's nested array with some condition

我是 React native 的新手,正在尝试将 Realm 集成为客户端数据库。 我有 2 个模式:

export const CAR_SCHEMA = {
  name: 'Car',
  properties: {
    color: 'string',
    model: 'string',
  }
};

export const PERSONS_SCHEMA = {
  name: 'Person',
  primaryKey: 'id',
  properties: {
    id: 'int',
    firstName: 'string',
    lastName: 'string'
    cars: 'Cars[]'
  }
};

我的问题基本上是指如何从 'Person' 中删除 'Car',其中 Car.model='Honda'?我找不到任何关于从对象的嵌套数组中删除元素的文档。

从数组中删除但将项目保留在 Realm 中:

realm.write(() => {
    let person = realm.objectForPrimaryKey('person', personId);
    let carsOfPerson = person.cars;

    var i = carsOfPerson.length - 1;
    while(i >= 0) {
        if(carsOfPerson[i].model == "Honda") {
            carsOfPerson.splice(i, 1);
        }
        i--;
    }
});

通过从 Realm 中删除项目从数组中删除:

realm.write(() => {
    let person = realm.objectForPrimaryKey('person', personId);
    let carsOfPerson = person.cars;
    let hondasOfPerson = carsOfPerson.filtered('model = "HONDA"')
    realm.delete(hondasOfPerson)
});