ArrowDB仪表板将照片上传到用户

时间:2016-01-22 09:55:20

标签: appcelerator photo

使用https://platform.appcelerator.com

上的arrowdb信息中心上传照片时

Cloud.Users.query仅显示photo_id

但是,我使用仪表板创建了一个新用户,并附加了一张正在Cloud.Users.query中显示的照片

例如。用户创建后上传的照片

{
"id": "563019f18cb04aede69e2111",
"first_name": "store1",
"last_name": "123",
"created_at": "2015-10-28T00:42:25+0000",
"updated_at": "2016-01-22T08:59:44+0000",
"external_accounts": [],
"confirmed_at": "2015-10-28T00:42:25+0000",
"username": "user",
"admin": "false",
"stats": {
    "photos": {
        "total_count": 0
    },
    "storage": {
        "used": 0
    }
},
"photo_id": "56a1dc083a654d090d126792",
"friend_counts": {
    "requests": 0,
    "friends": 0
}

}

例如。创建用户时上传的照片

  {
"id": "56a1f0333a65234234390d7",
"first_name": "qqqq",
"last_name": "wwwe",
"created_at": "2016-01-22T09:02:43+0000",
"updated_at": "2016-01-22T09:07:18+0000",
"external_accounts": [],
"confirmed_at": "2016-01-22T09:02:43+0000",
"username": "qwe",
"admin": "false",
"stats": {
    "photos": {
        "total_count": 0
    },
    "storage": {
        "used": 0
    }
},
"photo": {
    "id": "56a1f0333a654d090d0390d8",
    "filename": "userPhoto.jpg",
    "size": 25394,
    "md5": "e20f4fcadf6cde9fccfb458dd11951d4",
    "created_at": "2016-01-22T09:02:43+0000",
    "updated_at": "2016-01-22T09:02:43+0000",
    "processed": true,
    "urls": {
        "original": "https://s3-us-west-1.amazonaws.com/storage-platform.cloud.appcelerator.com/xmqh1djNEIChtQFP6d37HNH5DQNCXQoX/photos/51/d4/56a1f0333a654d090d0390d9/userPhoto_original.jpg"
    },
    "content_type": "image/jpeg",
    "user": {
        "id": "56a1f0333a65234234390d7",
        "first_name": "qqqq",
        "last_name": "wwwe",
        "created_at": "2016-01-22T09:02:43+0000",
        "updated_at": "2016-01-22T09:07:18+0000",
        "external_accounts": [],
        "confirmed_at": "2016-01-22T09:02:43+0000",
        "username": "qwe",
        "admin": "false",
        "stats": {
            "photos": {
                "total_count": 0
            },
            "storage": {
                "used": 0
            }
        },
        "photo_id": "56a1f0333a654d090d0390d8",
        "friend_counts": {
            "requests": 0,
            "friends": 0
        }
    }
},
"friend_counts": {
    "requests": 0,
    "friends": 0
}
}

基本上在创建过程中上传照片的用户会显示此额外信息

"photo": {
    "id": "56a1f0333a654d090d0390d8",
    "filename": "userPhoto.jpg",
    "size": 25394,
    "md5": "e20f4fcadf6cde9fccfb458dd11951d4",
    "created_at": "2016-01-22T09:02:43+0000",
    "updated_at": "2016-01-22T09:02:43+0000",
    "processed": true,
    "urls": {
        "original": "https://s3-us-west-1.amazonaws.com/storage-platform.cloud.appcelerator.com/xmqh1djNEIChtQFP6d37HNH5DQNCXQoX/photos/51/d4/56a1f0333a654d090d0390d9/userPhoto_original.jpg"
    },
    "content_type": "image/jpeg",
    "user": {
        "id": "56a1f0333a65234234390d7",
        "first_name": "qqqq",
        "last_name": "wwwe",
        "created_at": "2016-01-22T09:02:43+0000",
        "updated_at": "2016-01-22T09:07:18+0000",
        "external_accounts": [],
        "confirmed_at": "2016-01-22T09:02:43+0000",
        "username": "qwe",
        "admin": "false",
        "stats": {
            "photos": {
                "total_count": 0
            },
            "storage": {
                "used": 0
            }
        },

1 个答案:

答案 0 :(得分:1)

我一直在遇到这样的问题,而且我注意到图像不会从ArrowDB用户界面显示出来(不确定是否相关)。 查询模型时,API仅返回空对象: photo: {}

我一直在为ArrowDB用户界面创建一张票证https://jira.appcelerator.org/browse/API-1277

sachinmw你是否为最初的问题创建了一张票?

解决方法可能是使用photo_id并运行另一个单独的查询来检索照片模型,但这不利于网络优化。

修改

在直接与Appcelerator打交道关于空photo: {}对象返回后,答案非常简单:

每当您在任何ArrowDB对象上使用来自query()的{​​{1}} ti.cloud函数时,都会有一个名为response_json_depth的参数,该参数设置为1 default,只返回API返回的JSON对象的一个​​级别。

我没有触及那个参数:

{
    "Vehicle": [
        {
            "name": "foo",
            "photo: {}
        }
    ]
}

通过将response_json_depth设置为3,我设法:

{
    "Vehicle": [
        {
            "name": "foo",
            "photo: {
                "urls": {
                    "original": "http://bar.com"
                }
            }
        }
    ]
}

希望能帮助某人。这也适用于任何ArrowDB对象的Cloud.Objects.query()方法。