使用 jsdata 对象而不持久化它们
Using jsdata objects without persisting them
我正在使用 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">
但该地址并未设置为该组织,因为它在商店中尚不存在。那么有什么办法可以处理吗?
谢谢!
您可以禁用正在存储中查找相关数据的关系 属性 访问器。禁用 属性 访问器意味着链接将不会 up-to-date 随着数据更改或从商店中删除或添加到商店中。
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 将引入更灵活的选项。
我正在使用 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">
但该地址并未设置为该组织,因为它在商店中尚不存在。那么有什么办法可以处理吗?
谢谢!
您可以禁用正在存储中查找相关数据的关系 属性 访问器。禁用 属性 访问器意味着链接将不会 up-to-date 随着数据更改或从商店中删除或添加到商店中。
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 将引入更灵活的选项。