0

我有一些模型的关系类似于以下内容:

App.User = DS.Model.extend
       favorite_articles: DS.hasMany('App.FavoriteArticle')
       hella_favorite_articles: DS.hasMany('App.HellaFavoriteArticle')

App.FavoriteArticle = DS.Model.extend
       user: DS.belongsTo('App.User')
       article: DS.belongsTo('App.Article')
       starred: DS.attr('boolean')

App.HellaFavoriteArticle = DS.Model.extend
       user: DS.belongsTo('App.User')
       article: DS.belongsTo('App.Article')
       starred: DS.attr('boolean')

App.Article = DS.Model.extend
       favorite_article: belongsTo('App.Article')
       hella_favorite_article: belongsTo('App.Article')

这是正在发生的事情。假设我为特定视图加载了所有模型。在这种观点下,有一个动作可以为 HellaFavoriteArticle 加注星标(我知道这很荒谬)。

当我连接所有这些并单击操作时,Ember 会向“/hella_favorite”和“/favorite”端点发出 PUT。

为什么会这样?我宁愿它没有,而且我认为它实际上可能会导致错误,尽管我还不能确认这一点。但是,我确实发现当我从 HellaFavoriteArticle 模型中删除与文章的关系时,Ember 不再触发对两个端点的请求。所以这让我猜测 Ember “决定”根据共享关系更新这两个模型。

一方面这是一些非常狡猾的魔法,但另一方面,我不知道去哪里覆盖它。

蒂亚!

4

0 回答 0