首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ember中的嵌入式记录-数据1.0测试版

ember中的嵌入式记录-数据1.0测试版
EN

Stack Overflow用户
提问于 2013-09-05 09:04:14
回答 1查看 1.3K关注 0票数 6

我的记录不是一成不变的。他们有这样的结构:

代码语言:javascript
复制
{
    'type' : 'node',
    'properties' : {
        'name' : 'sfddsadfsd',
        'xxx'  : 'sadfdsf',
    },
    'outputs' : {
        'fghdf' : 'sadfdsf',
        'xxxx'  : 'sdfsd',
    }
}

你明白了吧。这些字段(propertiesoutputs)并不指旁置记录;相反,它们是我记录的一部分(在我的CouchDb数据库中)。我这么做了(在得知这是一个罪恶的成员-数据标准),因为它是一种方便的方式来组织许多属性在一个文档-术语,CouchDb使用的记录。这个名字也暗示了为什么你想要在你的记录中有结构:因为一个文档可以变得相当大,因此你需要一些组织结构来使你的生活变得更容易(或者我想的,在进入成员数据之前)。

我很高兴地用嵌入式属性对这些记录进行建模,使用以前版本的成员数据。现在,似乎成员-数据有dropped support的嵌入式记录.有一个实现extractSingle的建议,用mapProperty('id');做一些有趣的事情

因为它们是我的记录的一部分,所以嵌入的属性/输出没有记录id。在节点之外根本没有属性或输出的概念。它们不是具有ID的独立数据:它们只是节点的一部分。

以前,我有以下模型定义:

代码语言:javascript
复制
SettingsApp.NodeProperties = DS.Model.extend({
    name : DS.attr('string'),
});

DS.RESTAdapter.map('SettingsApp.NodeProperties', {
    name : {key: 'name'},
});

SettingsApp.Node = DS.Model.extend(SettingsApp.NodeMixin, {
    properties : DS.belongsTo('nodeProperties')
});

DS.RESTAdapter.map('SettingsApp.Node', {
    nodeType:   {key: 'type'},
    outputs:    {embedded: 'always'},
    properties: {embedded: 'always'}
});

(outputsNodeMixin的一部分)

我的选择是如何建模这与成员-数据1.0测试版?我不知道如何处理这些模型,我有十几个模型。很难把我的记录结构塞进成员数据里,现在.泡芙,努力不见了,只是不再起作用了。

EN

回答 1

Stack Overflow用户

发布于 2013-09-10 15:49:15

如果您只想使用propertiesoutputs作为原始JSON数据,您可以将它们声明为非类型的DS.attr,它们将按原样传递。

代码语言:javascript
复制
SettingsApp.Node = DS.Model.extend(SettingsApp.NodeMixin, {
    properties : DS.attr(),
    outputs : DS.attr()
});
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18632117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档