Ember.js:从当前活动路线获取id

时间:2013-03-01 18:45:18

标签: ember.js ember-data ember-router

可能是我最近问过的最直截了当的问题。

给出如此设置的路线:

Social.Router.map(function() {
    this.resource('accounts', function(){
        this.resource('account', { path: ':account_id'});
    });
});

和这样的网址:

/accounts/12

如果我想获取当前有效的帐户记录,我如何获得account_id?最终目标是我这样做:

acct = App.Account.find(12)

当我宁愿这样做时

acct = App.Account.find(account_id)

更新1

这是AccountsRou​​te:

Social.AccountsRoute = Ember.Route.extend({
    model: function() {
        return Social.Account.find();
    }
});

1 个答案:

答案 0 :(得分:2)

Ember中没有规范机制来存储和检索当前用户。最简单的解决方案可能是在用户通过身份验证时(即在ajax请求的成功回调中)将当前用户的帐户ID保存到Social.currentAccountId。然后你可以执行

Social.Account.find(Social.get('currentAccountId'))

当您需要获得当前用户时。