使用 ember-data 非常棒,它开箱即用地解决了我的大部分数据处理挑战。然而,有一个问题我一直在通过谷歌搜索来寻找答案。
假设我向服务器发出 GET 请求以查找记录,App.Fruit.find('banana');
. 如果此记录不存在,则后端向客户端发回状态代码 (404)。
现在,在以后的任何给定时间,“香蕉”记录可能由其他人创建,因此存在于服务器上的数据库中。
但是,此时,任何进一步的调用App.Fruit.find('banana');
都不会向服务器发出新的 GET 请求。
我试过调用两者
banana = App.Fruit.find('banana');
,然后banana.get('transaction').rollback();
从服务器返回 404。我也试过
App.store.get('defaultTransaction').rollback();
看看这是否有效。我什至尝试将事务状态设置为“已删除” - 就像这样:
banana.get('stateManager').goToState('deleted');
- 希望它会在之后使App.Fruit.find('banana');
问题成为一个新的 GET 请求。不幸的是,它没有。
我的问题是:如果先前的请求没有返回任何数据(404),我如何让 ember-data 再次发出 GET 请求?