gpt4 book ai didi

ember.js - 根据已更改的属性定义buildURL

转载 作者:行者123 更新时间:2023-12-02 05:59:36 24 4
gpt4 key购买 nike

我想根据在同一模型上更改的属性重新定义buildURL。例如,如果状态更改,我想将PUT路由到某个路由,如果子用户更改,我想将PUT路由到另一路由。

范例:

this.store.find('conversation', conv.id).then(function(conversation){
conversation.set('status', 'opened');
conversation.save();
});

这将使用特定的PUT路线,并且:
this.store.find('conversation', this.get('selectedConv').id).then(function(conversation){
conversation.set('subuser', subuser);
conversation.set('url', subuser.get('email'));
conversation.save();
});

即使在同一模型上进行了更改,这也将使用另一条PUT路线。这都是在 Controller 中发生的。

最佳答案

您需要自定义conversation适配器,特别是urlForUpdateRecord方法。

原始方法looks像这样:

urlForUpdateRecord: function(id, modelName, snapshot) {
return this._buildURL(modelName, id);
},

在这种方法中,您需要检查快照并相应地调整URL。

最新版本的Ember Data已引入 changedAttributes属性。这似乎是您所需要的。

祝好运!

关于ember.js - 根据已更改的属性定义buildURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30761375/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com