繁体   English   中英

Ember.js找到()与params

[英]Ember.js find() with params

我有一个Rails API,它响应以下JSON:

/用户/ 1

{
    "id": 1,
    "email": "sjobs@apple.com"
}

/用户/ 1?嵌入=角色,存储

{
    "id": 1,
    "email": "sjobs@apple.com"
    "store": {
        "id": 1,
        "name": "Apple Store"
    },
    "role": {
        "id": 1,
        "name": "Owner"
    }
}

是否可以决定使用Ember.js获取哪些关系 - App.User.find(1)? 我已经尝试过App.User.find({id:1,embed:'role'})但是它将GET请求作为/ users?id = 1&embed = role发送到路由到Rails控制器中的索引操作。

有没有更好的方法来处理这个? 我有完全访问权限来修改API。 对每个API请求进行侧载似乎有点矫枉过正,如果我可以根据查询参数决定关系,我会很棒。

有没有更好的方法来处理这个?

我想假设您使用RESTAdapter的最佳选择应该是将您的侧载定义为嵌入式,例如:

DS.RESTAdapter.map('App.User', {
  role: { embedded: 'always' },
  store: { embedded: 'always' }
};

这样, rolestore将保存在同一记录中,因此不会产生单独的GET请求。

嵌入的两个可能值是:

always:加载时嵌入子记录,并将其保存在同一记录中。

load:加载时嵌入子记录,但应保存为独立记录。 为了使其工作,子记录必须具有ID。

希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM