Запрос обратной ссылки на два поля с одинаковым типом

#realm

Вопрос:

У меня есть связь между продуктом и его единицами, описанная в схеме, как показано ниже:

 public static schema: Realm.ObjectSchema = {
    name: Product.schemaName,
    primaryKey: 'sku',
    properties: {
      name: {type: 'string'},
      baseUnit: {type: SoldableUnit.schemaName},
      derivedUnits: {type: 'list', objectType: SoldableUnit.schemaName},
     
    },
  };
public static schema: Realm.ObjectSchema = {
    name: SoldableUnit.schemaName,
    embedded: true,
    properties: {
      unitName: {type: 'string'},
      sellingPrice: {type: 'double'},
      weight: {type: 'float'},
      barcode: {type: 'string', optional: true, indexed:true},
    },
  };
 

Идея состоит в том , что a product может иметь один baseUnit и много derivedUnits , и оба baseUnit и derivedUnit s SoldableUnit имеют одну и ту же схему. Я хочу сделать запрос product barcode . Здесь я должен вернуть товар, предоставив штрих-код, который, возможно, равен штрих-коду базовой единицы или производных единиц. После некоторых исследований я выясняю, что могу использовать обратную ссылку для возврата обратной зависимости. Проблема здесь в том, что SoldableUnit встречается как в базовом, так и в производном подразделениях, и я не знаю, как достичь этих целей? И подходит ли дизайн схемы продукта?

Комментарии:

1. Пожалуйста, отметьте вопрос своим языком разработки. Кроме того, похоже, что SoldableUnit является встроенным объектом? Если это так, то нет связи в традиционном смысле, поэтому не было бы прямой/обратной (обратной ссылки). Встроенные объекты больше похожи на свойство родительского объекта, чем на отдельный объект. Взгляните на встроенные объекты запроса документов. При запросе штрих-кода встроенных объектов будет возвращен родительский объект.

2. Да, спасибо @Jay . Я спросил автора, и они отвечают точно так же, как вы говорите. Да, здесь не нужно использовать обратную ссылку