Ember 关系不符合测试环境中的模型自定义适配器

Ember Relationships Are Not Respecting Model Custom Adapter in Test Environment

在我的 Ember.js 应用程序中,我有一个带有指向 API 的自定义适配器的模型公司。我还有一个带有自定义适配器的用户模型,该适配器指向不同的 API 以及与公司的 belongsTo 关系(通过 user#companyId 属性)。

手动运行该应用程序时,代码中对公司的所有引用似乎都将请求发送到公司自定义适配器中定义的正确端点。但是,当 运行 测试(单元测试和验收测试)时,对公司 this.store.find... 的直接查询命中了正确的端点(公司主机。com/api/companies/1),但通过其关系引用了公司用户 user.company 指向用户适配器的主机和命​​名空间 (user-host.com/api/companies/1).

我是 Ember 的新手,如有任何帮助或见解,我们将不胜感激。

当您调用 user.company 时,它将使用您的用户适配器的 findBelongsTo 方法,从用户适配器获取主机和命名空间。要解决此问题,您需要重写 findBelongsTo 方法以使用正确的 ID 调用公司适配器的 findRecord。