检索当前用户的策略

Dam*_*IEU 5 javascript ajax ember.js ember-old-router

我正在寻找一个优雅的策略来使用emberjs(和ember-data)检索当前用户信息.

目前,我做以下事项:

我的API响应/users/me当前用户.
在我的适配器中,当检索到的对象id不是我希望的real_id那个时,我添加一个id(数据库中用户的id),并用我期望的内容替换实际返回的id.

因此,当我的适配器将"我"作为用户的id,但服务器返回1时,我得到以下json:

{"real_id": 1, "id": "me"}
Run Code Online (Sandbox Code Playgroud)

这有效.但我不是一个大粉丝,我想尽可能避免更改适配器的默认内容.

你为此使用任何策略吗?你会推荐什么 ?

pan*_*atz 9

我会用一个控制器App.currentUserController.

App.CurrentUserController = Ember.ObjectController.extend({
    content: null,

    retrieveCurrentUser: function() {
        var controller = this;
        Ember.$.getJSON('/users/me', function(data) {
            App.store.load(App.User, data);
            var currentUser = App.store.find(data.id);
            controller.set('content', currentUser);
        });
    }
});
Run Code Online (Sandbox Code Playgroud)