如何在Ember.js中将模型组织到子文件夹中?

8

我有多个代表用户数据的模型(配置文件、设置等)。目前,它们存储在模型文件夹中,如下所示:

models
  -> user.js
  -> profile.js
  -> settings.js

我想要的是这样一个文件夹结构;
models
  -> user.js
  -> user (folder)
    -> profile.js
    -> settings.js

用户模型(user.js)可以这样引用档案模型(profile.js):
import DS from "ember-data"; 
export default DS.Model.extend({
   NSP: DS.attr('string'),
   Status: DS.attr('string'),
   Profile: DS.belongsTo('profile', {embedded: 'always'})
});

我尝试将DS.belongsTo('profile', {embedded: 'always'})替换为以下内容:
  • DS.belongsTo('user.profile', {embedded: 'always'})
  • DS.belongsTo('user/profile', {embedded: 'always'})
  • DS.belongsTo('user-profile', {embedded: 'always'})
但这样不起作用。
我漏掉了什么吗?
1个回答

2

你确定使用"user/profile"不起作用吗?我在我的系统上复制了你的结构,得到了"user"和"user/profile"模型。

你在Firefox或Chrome上安装了Ember Inspector吗?你可以通过进入“Data”面板轻松查看可用的模型:enter image description here


profile模型位于user文件夹下,即user/profile时, 如何运行createRecordpeekAll? 可以通过以下方式: this.store.createRecord('user/profile'); this.store.peekAll('user/profile'); 还是有其他的解决方法? - rinold simon
@rinold,你最好提出一个新问题来询问。我已经好几年没有使用Ember了,所以无法立即给你答案。 - Ruaidhrí Primrose

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接