2

我正在使用 ember rc3 和 ember-data 12 (sha e324f0e)(基本上是指南中推荐的文件)。我有2个模型设置如下:

App.User = DS.Model.extend({
    username: DS.attr('string'),
    playerType: DS.attr('string'),
    cars: DS.hasMany('App.Car')
})

App.Car = DS.Model.extend({
        name: DS.attr('string'),
        thumb: DS.attr('string'),
        user: DS.belongsTo('App.User')
})

返回的json是

{
    "cars": [
        {
            "id": "50ace47234fa7557403e7f02", 
            "name": "Dodge Charger SRT8", 
            "thumb": "/static/images/carthumbs/18331.png", 
            "user_id": "502a754b34fa75280c000a7e"
        }, 
        {
            "id": "508668cc34fa753b78784ca2", 
            "name": "BMW M3 Coup\u00e9", 
            "thumb": "/static/images/carthumbs/23250.png", 
            "user_id": "502a754b34fa75280c000a7e"
        }, 
        {
            "id": "50c7545334fa750ab8cb3ac2", 
            "name": "BMW Z4 M Coup\u00e9", 
            "thumb": "/static/images/carthumbs/7618.png", 
            "user_id": "502a754b34fa75280c000a7e"
        }, 
        {
            "id": "50adf64c34fa750bb036121e", 
            "name": "2013 Ford Shelby GT500\u2122", 
            "thumb": "/static/images/carthumbs/24824.png", 
            "user_id": "502a754b34fa75280c000a7e"
        }
    ], 
    "user": {
        "id": "502a754b34fa75280c000a7e", 
        "car_ids": [
            "50ace47234fa7557403e7f02", 
            "508668cc34fa753b78784ca2", 
            "50c7545334fa750ab8cb3ac2", 
            "50adf64c34fa750bb036121e"
        ], 
        "player_type": "Standard Player", 
        "username": "WillMckenzie"
    }
}

如果我调用 App.User.find("502a754b34fa75280c000a7e"),一切似乎都可以正常加载,但是当我尝试访问用户的汽车属性时,它会触发对汽车 api 路由的第二个 http 请求。我的理解是这不应该是必要的,如果我将 id 更改为基本整数,则不需要。当我使用 Mongo 作为我的数据库时,我的 id 必须采用这种字符串格式。

关于我做错了什么的任何建议?

干杯意志

4

1 回答 1

0

这是答案,因此人们不必深入研究评论:

“我列出了一个不在归还汽车列表中的汽车 ID。它们的抓取方式略有不同,我显然在那里有不良记录。这意味着它一直认为它需要重新加载该记录,因此会继续请求。显然,当我伪造整数 ID 时,它掩盖了这一点。” -OiNutter

于 2015-02-03T20:17:04.303 回答