Использование объектов jsdata без сохранения их
Я использую js-data и js-data-angular. У меня есть 2 ресурса, organization
а также address
, организация hasOne
адрес.
Я пытаюсь создать организацию (не сохраняя ее), чтобы иметь возможность связать ее с компонентами HTML. И установить некоторые реквизиты по умолчанию. Итак, я делаю:
var address = AddressResource.createInstance();
address.set('country', defaultCountry); // CountryResource.get('US');
var organization = OrganizationResource.createInstance({ address: address });
Тогда я делаю в виде что-то вроде
<input ng-model="organization.address.country.name">
Но адрес не устанавливается в организации, так как он еще не существует в магазине. Так есть ли способ справиться с этим?
Спасибо!
1 ответ
Вы можете отключить средства доступа к свойствам отношений, которые ищут в хранилище соответствующие данные. Отключение средств доступа к свойствам означает, что ссылки не будут обновляться по мере изменения данных или удаления или добавления в хранилище.
var Organization = store.defineResource({
name: 'organization',
relations: {
hasOne: {
address: {
// disable property accessor for this relation
link: false,
localField: 'address',
localKey: 'address_id'
}
}
}
})
настройка linkRelations: false
В магазине будут отключены свойства доступа для всех отношений.
js-data 3.x представит более гибкие опции.