#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 . Я спросил автора, и они отвечают точно так же, как вы говорите. Да, здесь не нужно использовать обратную ссылку